diff --git a/third_party/bigframes_vendored/tpch/queries/q14.py b/third_party/bigframes_vendored/tpch/queries/q14.py index 27f3d9e224..e2a5a73214 100644 --- a/third_party/bigframes_vendored/tpch/queries/q14.py +++ b/third_party/bigframes_vendored/tpch/queries/q14.py @@ -26,9 +26,20 @@ def q(project_id: str, dataset_id: str, session: bigframes.Session): filtered["L_EXTENDEDPRICE"] * (1 - filtered["L_DISCOUNT"]) ) * filtered["P_TYPE"].str.contains("PROMO").astype("Int64") - total_revenue = (filtered["L_EXTENDEDPRICE"] * (1 - filtered["L_DISCOUNT"])).sum() - promo_revenue = filtered["CONDI_REVENUE"].sum() + total_revenue = ( + (filtered["L_EXTENDEDPRICE"] * (1 - filtered["L_DISCOUNT"])) + .to_frame(name="TEMP") + .sum() + ) + + promo_revenue = filtered["CONDI_REVENUE"].to_frame(name="TEMP").sum() - promo_revenue_percent = 100.00 * promo_revenue / total_revenue + promo_revenue_percent = ( + (100.00 * promo_revenue / total_revenue) + .sort_index() + .reset_index(drop=True) + .round(2) + .to_frame(name="PROMO_REVENUE") + ) - _ = round(promo_revenue_percent, 2) + promo_revenue_percent.to_gbq() diff --git a/third_party/bigframes_vendored/tpch/queries/q7.py b/third_party/bigframes_vendored/tpch/queries/q7.py index a4dfe3f12e..93047dc299 100644 --- a/third_party/bigframes_vendored/tpch/queries/q7.py +++ b/third_party/bigframes_vendored/tpch/queries/q7.py @@ -35,28 +35,20 @@ def q(project_id: str, dataset_id: str, session: bigframes.Session): var3 = date(1995, 1, 1) var4 = date(1996, 12, 31) - n1 = nation[(nation["N_NAME"] == var1)] - n2 = nation[(nation["N_NAME"] == var2)] + nation = nation[nation["N_NAME"].isin([var1, var2])] + lineitem = lineitem[ + (lineitem["L_SHIPDATE"] >= var3) & (lineitem["L_SHIPDATE"] <= var4) + ] - jn1 = customer.merge(n1, left_on="C_NATIONKEY", right_on="N_NATIONKEY") + jn1 = customer.merge(nation, left_on="C_NATIONKEY", right_on="N_NATIONKEY") jn2 = jn1.merge(orders, left_on="C_CUSTKEY", right_on="O_CUSTKEY") jn2 = jn2.rename(columns={"N_NAME": "CUST_NATION"}) jn3 = jn2.merge(lineitem, left_on="O_ORDERKEY", right_on="L_ORDERKEY") jn4 = jn3.merge(supplier, left_on="L_SUPPKEY", right_on="S_SUPPKEY") - jn5 = jn4.merge(n2, left_on="S_NATIONKEY", right_on="N_NATIONKEY") + jn5 = jn4.merge(nation, left_on="S_NATIONKEY", right_on="N_NATIONKEY") df1 = jn5.rename(columns={"N_NAME": "SUPP_NATION"}) + total = df1[df1["CUST_NATION"] != df1["SUPP_NATION"]] - jn1 = customer.merge(n2, left_on="C_NATIONKEY", right_on="N_NATIONKEY") - jn2 = jn1.merge(orders, left_on="C_CUSTKEY", right_on="O_CUSTKEY") - jn2 = jn2.rename(columns={"N_NAME": "CUST_NATION"}) - jn3 = jn2.merge(lineitem, left_on="O_ORDERKEY", right_on="L_ORDERKEY") - jn4 = jn3.merge(supplier, left_on="L_SUPPKEY", right_on="S_SUPPKEY") - jn5 = jn4.merge(n1, left_on="S_NATIONKEY", right_on="N_NATIONKEY") - df2 = jn5.rename(columns={"N_NAME": "SUPP_NATION"}) - - total = bpd.concat([df1, df2]) - - total = total[(total["L_SHIPDATE"] >= var3) & (total["L_SHIPDATE"] <= var4)] total["VOLUME"] = total["L_EXTENDEDPRICE"] * (1.0 - total["L_DISCOUNT"]) total["L_YEAR"] = total["L_SHIPDATE"].dt.year