Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,18 +1,17 @@
-- This test file was converted from group-analytics.sql.
-- TODO: UDF should be inserted and tested at GROUP BY clause after SPARK-28445
CREATE OR REPLACE TEMPORARY VIEW testData AS SELECT * FROM VALUES
(1, 1), (1, 2), (2, 1), (2, 2), (3, 1), (3, 2)
AS testData(a, b);

-- CUBE on overlapping columns
SELECT a + b, b, udf(SUM(a - b)) FROM testData GROUP BY a + b, b WITH CUBE;
SELECT udf(a + b), b, udf(SUM(a - b)) FROM testData GROUP BY udf(a + b), b WITH CUBE;

SELECT a, udf(b), SUM(b) FROM testData GROUP BY a, b WITH CUBE;
SELECT udf(a), udf(b), SUM(b) FROM testData GROUP BY udf(a), b WITH CUBE;

-- ROLLUP on overlapping columns
SELECT udf(a + b), b, SUM(a - b) FROM testData GROUP BY a + b, b WITH ROLLUP;

SELECT a, b, udf(SUM(b)) FROM testData GROUP BY a, b WITH ROLLUP;
SELECT udf(a), b, udf(SUM(b)) FROM testData GROUP BY udf(a), b WITH ROLLUP;

CREATE OR REPLACE TEMPORARY VIEW courseSales AS SELECT * FROM VALUES
("dotNET", 2012, 10000), ("Java", 2012, 20000), ("dotNET", 2012, 5000), ("dotNET", 2013, 48000), ("Java", 2013, 30000)
Expand All @@ -38,14 +37,14 @@ GROUP BY course, earnings GROUPING SETS((), (course), (course, earnings)) ORDER
-- GROUPING/GROUPING_ID
SELECT udf(course), udf(year), GROUPING(course), GROUPING(year), GROUPING_ID(course, year) FROM courseSales
GROUP BY CUBE(course, year);
SELECT course, udf(year), GROUPING(course) FROM courseSales GROUP BY course, year;
SELECT course, udf(year), GROUPING_ID(course, year) FROM courseSales GROUP BY course, year;
SELECT course, udf(year), GROUPING(course) FROM courseSales GROUP BY course, udf(year);
SELECT course, udf(year), GROUPING_ID(course, year) FROM courseSales GROUP BY udf(course), year;
SELECT course, year, grouping__id FROM courseSales GROUP BY CUBE(course, year) ORDER BY grouping__id, course, udf(year);

-- GROUPING/GROUPING_ID in having clause
SELECT course, year FROM courseSales GROUP BY CUBE(course, year)
HAVING GROUPING(year) = 1 AND GROUPING_ID(course, year) > 0 ORDER BY course, udf(year);
SELECT course, udf(year) FROM courseSales GROUP BY course, year HAVING GROUPING(course) > 0;
SELECT course, udf(year) FROM courseSales GROUP BY udf(course), year HAVING GROUPING(course) > 0;
SELECT course, udf(udf(year)) FROM courseSales GROUP BY course, year HAVING GROUPING_ID(course) > 0;
SELECT udf(course), year FROM courseSales GROUP BY CUBE(course, year) HAVING grouping__id > 0;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ struct<>


-- !query 1
SELECT a + b, b, udf(SUM(a - b)) FROM testData GROUP BY a + b, b WITH CUBE
SELECT udf(a + b), b, udf(SUM(a - b)) FROM testData GROUP BY udf(a + b), b WITH CUBE
-- !query 1 schema
struct<(a + b):int,b:int,CAST(udf(cast(sum(cast((a - b) as bigint)) as string)) AS BIGINT):bigint>
struct<CAST(udf(cast((a + b) as string)) AS INT):int,b:int,CAST(udf(cast(sum(cast((a - b) as bigint)) as string)) AS BIGINT):bigint>
-- !query 1 output
2 1 0
2 NULL 0
Expand All @@ -33,9 +33,9 @@ NULL NULL 3


-- !query 2
SELECT a, udf(b), SUM(b) FROM testData GROUP BY a, b WITH CUBE
SELECT udf(a), udf(b), SUM(b) FROM testData GROUP BY udf(a), b WITH CUBE
-- !query 2 schema
struct<a:int,CAST(udf(cast(b as string)) AS INT):int,sum(b):bigint>
struct<CAST(udf(cast(a as string)) AS INT):int,CAST(udf(cast(b as string)) AS INT):int,sum(b):bigint>
-- !query 2 output
1 1 1
1 2 2
Expand Down Expand Up @@ -70,9 +70,9 @@ NULL NULL 3


-- !query 4
SELECT a, b, udf(SUM(b)) FROM testData GROUP BY a, b WITH ROLLUP
SELECT udf(a), b, udf(SUM(b)) FROM testData GROUP BY udf(a), b WITH ROLLUP
-- !query 4 schema
struct<a:int,b:int,CAST(udf(cast(sum(cast(b as bigint)) as string)) AS BIGINT):bigint>
struct<CAST(udf(cast(a as string)) AS INT):int,b:int,CAST(udf(cast(sum(cast(b as bigint)) as string)) AS BIGINT):bigint>
-- !query 4 output
1 1 1
1 2 2
Expand Down Expand Up @@ -205,7 +205,7 @@ dotNET NULL 0 1 1


-- !query 14
SELECT course, udf(year), GROUPING(course) FROM courseSales GROUP BY course, year
SELECT course, udf(year), GROUPING(course) FROM courseSales GROUP BY course, udf(year)
-- !query 14 schema
struct<>
-- !query 14 output
Expand All @@ -214,7 +214,7 @@ grouping() can only be used with GroupingSets/Cube/Rollup;


-- !query 15
SELECT course, udf(year), GROUPING_ID(course, year) FROM courseSales GROUP BY course, year
SELECT course, udf(year), GROUPING_ID(course, year) FROM courseSales GROUP BY udf(course), year
-- !query 15 schema
struct<>
-- !query 15 output
Expand Down Expand Up @@ -250,7 +250,7 @@ dotNET NULL


-- !query 18
SELECT course, udf(year) FROM courseSales GROUP BY course, year HAVING GROUPING(course) > 0
SELECT course, udf(year) FROM courseSales GROUP BY udf(course), year HAVING GROUPING(course) > 0
-- !query 18 schema
struct<>
-- !query 18 output
Expand Down