64 lines
2.4 KiB
Plaintext
64 lines
2.4 KiB
Plaintext
# name: test/sql/pivot/pivot_tpch.test_slow
|
|
# description: Test pivot on the TPC-H dataset
|
|
# group: [pivot]
|
|
|
|
require tpch
|
|
|
|
statement ok
|
|
CALL dbgen(sf=0.1);
|
|
|
|
query IIIII
|
|
FROM (PIVOT lineitem ON l_shipinstruct USING SUM(l_quantity) GROUP BY l_returnflag) ORDER BY ALL;
|
|
----
|
|
A 943655 940094 946224 944227
|
|
N 1938403 1930781 1951198 1954697
|
|
R 950702 947111 937692 950018
|
|
|
|
query IIIII
|
|
SELECT * FROM lineitem PIVOT (SUM(l_quantity) FOR l_shipinstruct IN ('COLLECT COD', 'DELIVER IN PERSON', 'NONE', 'TAKE BACK RETURN') GROUP BY l_returnflag) ORDER BY ALL;
|
|
----
|
|
A 943655 940094 946224 944227
|
|
N 1938403 1930781 1951198 1954697
|
|
R 950702 947111 937692 950018
|
|
|
|
query IIIII
|
|
SELECT * FROM (SELECT l_shipinstruct, l_quantity, l_returnflag FROM lineitem) PIVOT (SUM(l_quantity) FOR l_shipinstruct IN ('COLLECT COD', 'DELIVER IN PERSON', 'NONE', 'TAKE BACK RETURN')) ORDER BY ALL;
|
|
----
|
|
A 943655 940094 946224 944227
|
|
N 1938403 1930781 1951198 1954697
|
|
R 950702 947111 937692 950018
|
|
|
|
query IIIIIIII
|
|
FROM (PIVOT (SELECT YEAR(l_shipdate) AS year, l_returnflag, l_quantity FROM lineitem) ON year USING SUM(l_quantity)) ORDER BY ALL
|
|
----
|
|
A 968197 1138593 1177788 489622 NULL NULL NULL
|
|
N NULL NULL NULL 1362746 2331027 2312320 1768986
|
|
R 984816 1143586 1170734 486387 NULL NULL NULL
|
|
|
|
query IIIIIIII
|
|
SELECT * FROM
|
|
(SELECT YEAR(l_shipdate) AS year, l_returnflag, l_quantity FROM lineitem)
|
|
PIVOT (SUM(l_quantity) FOR year IN (1992, 1993, 1994, 1995, 1996, 1997, 1998))
|
|
ORDER BY ALL
|
|
----
|
|
A 968197 1138593 1177788 489622 NULL NULL NULL
|
|
N NULL NULL NULL 1362746 2331027 2312320 1768986
|
|
R 984816 1143586 1170734 486387 NULL NULL NULL
|
|
|
|
# pivot TPC-H with order by
|
|
query IIIII
|
|
PIVOT lineitem ON l_quantity IN (SELECT l_quantity FROM (SELECT l_quantity, SUM(l_extendedprice) FROM lineitem GROUP BY ALL ORDER BY 2 DESC LIMIT 3)) USING SUM(l_extendedprice) GROUP BY l_returnflag, l_linestatus ORDER BY ALL
|
|
----
|
|
A F 209534220.50 206021055.17 195552797.28
|
|
N F 5063584.50 4429644.59 4883853.60
|
|
N O 417586267.50 416159447.06 405550037.76
|
|
R F 208093392.50 203387031.75 207333386.88
|
|
|
|
query IIIII
|
|
PIVOT lineitem ON l_quantity IN (SELECT l_quantity FROM (SELECT l_quantity, SUM(l_extendedprice) FROM lineitem GROUP BY ALL ORDER BY 2 LIMIT 3)) USING SUM(l_extendedprice) GROUP BY l_returnflag, l_linestatus ORDER BY ALL
|
|
----
|
|
A F 4271754.85 8199789.34 12264783.63
|
|
N F 130194.90 229144.78 281071.35
|
|
N O 8325866.03 16956521.54 25251628.56
|
|
R F 4181125.20 8312749.92 12666114.42
|