Skip to content

TPC-Havoc Q7_v3

TPC-Havoc benchmark · all TPC-Havoc queries

Representative SQL

Rendered for DataFusion with default parameters.

SELECT
supp_nation,
cust_nation,
l_year,
SUM(volume) AS revenue
FROM (
SELECT
n1.n_name AS supp_nation,
n2.n_name AS cust_nation,
EXTRACT(YEAR FROM l_shipdate) AS l_year,
l_extendedprice * (
1 - l_discount
) AS volume
FROM supplier AS s
INNER JOIN lineitem AS l
ON s.s_suppkey = l.l_suppkey
INNER JOIN orders AS o
ON l.l_orderkey = o.o_orderkey
INNER JOIN customer AS c
ON o.o_custkey = c.c_custkey
INNER JOIN nation AS n1
ON s.s_nationkey = n1.n_nationkey
INNER JOIN nation AS n2
ON c.c_nationkey = n2.n_nationkey
WHERE
(
(
n1.n_name = 'FRANCE' AND n2.n_name = 'GERMANY'
)
OR (
n1.n_name = 'GERMANY' AND n2.n_name = 'FRANCE'
)
)
AND l.l_shipdate BETWEEN CAST('1995-01-01' AS DATE) AND CAST('1996-12-31' AS DATE)
) AS shipping
GROUP BY
supp_nation,
cust_nation,
l_year
ORDER BY
supp_nation,
cust_nation,
l_year

Representative 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 TPCHavoc
bench = TPCHavoc(scale_factor=0.01) # your scale factor
queries = bench.get_queries(dialect="datafusion") # your platform's dialect; drop dialect= for native SQL
print(queries['7_v3'])

Source

Query text: benchbox/core/tpchavoc/variant_sets/q07.py