TPC-DS-OBT Q97
TPC-DS-OBT benchmark · all TPC-DS-OBT queries
Representative SQL
Rendered for DataFusion with default parameters.
WITH ssci AS ( SELECT obt.ship_customer_sk AS customer_sk, obt.item_sk AS item_sk FROM tpcds_sales_returns_obt AS obt WHERE ( obt.sold_date_sk = obt.sold_date_d_date_sk AND obt.sold_date_d_month_seq BETWEEN 1176 AND 1176 + 11 ) AND channel = 'store' GROUP BY obt.ship_customer_sk, obt.item_sk), csci AS ( SELECT obt.bill_customer_sk AS customer_sk, obt.item_sk AS item_sk FROM tpcds_sales_returns_obt AS obt WHERE ( obt.sold_date_sk = obt.sold_date_d_date_sk AND obt.sold_date_d_month_seq BETWEEN 1176 AND 1176 + 11 ) AND channel = 'catalog' GROUP BY obt.bill_customer_sk, obt.item_sk)SELECT SUM( CASE WHEN NOT ssci.customer_sk IS NULL AND csci.customer_sk IS NULL THEN 1 ELSE 0 END ) AS store_only, SUM( CASE WHEN ssci.customer_sk IS NULL AND NOT csci.customer_sk IS NULL THEN 1 ELSE 0 END ) AS catalog_only, SUM( CASE WHEN NOT ssci.customer_sk IS NULL AND NOT csci.customer_sk IS NULL THEN 1 ELSE 0 END ) AS store_and_catalogFROM ssciFULL OUTER JOIN csci ON ( ssci.customer_sk = csci.customer_sk AND ssci.item_sk = csci.item_sk )WHERE ( ssci.customer_sk = csci.customer_sk AND ssci.item_sk = csci.item_sk )LIMIT 100Representative DataFrame
No DataFrame implementation is registered for this query.
Get the exact query for your run
The blocks above are representative. To get the precise statement a specific platform runs at a specific scale, substitute your own values:
from benchbox import TPCDSOBT
bench = TPCDSOBT(scale_factor=1.0) # your scale factorqueries = bench.get_queries(dialect="datafusion") # your platform's dialect; drop dialect= for native SQLprint(queries['97'])Source
Query text: benchbox/core/tpcds_obt/queries.py