Martijn Visser created FLINK-34366: -------------------------------------- Summary: Add support to group rows by column ordinals Key: FLINK-34366 URL: https://issues.apache.org/jira/browse/FLINK-34366 Project: Flink Issue Type: New Feature Components: Table SQL / API Reporter: Martijn Visser
Reference: BigQuery https://cloud.google.com/bigquery/docs/reference/standard-sql/query-syntax#group_by_col_ordinals The GROUP BY clause can refer to expression names in the SELECT list. The GROUP BY clause also allows ordinal references to expressions in the SELECT list, using integer values. 1 refers to the first value in the SELECT list, 2 the second, and so forth. The value list can combine ordinals and value names. The following queries are equivalent: {code:sql} WITH PlayerStats AS ( SELECT 'Adams' as LastName, 'Noam' as FirstName, 3 as PointsScored UNION ALL SELECT 'Buchanan', 'Jie', 0 UNION ALL SELECT 'Coolidge', 'Kiran', 1 UNION ALL SELECT 'Adams', 'Noam', 4 UNION ALL SELECT 'Buchanan', 'Jie', 13) SELECT SUM(PointsScored) AS total_points, LastName, FirstName FROM PlayerStats GROUP BY LastName, FirstName; /*--------------+----------+-----------+ | total_points | LastName | FirstName | +--------------+----------+-----------+ | 7 | Adams | Noam | | 13 | Buchanan | Jie | | 1 | Coolidge | Kiran | +--------------+----------+-----------*/ {code} {code:sql} WITH PlayerStats AS ( SELECT 'Adams' as LastName, 'Noam' as FirstName, 3 as PointsScored UNION ALL SELECT 'Buchanan', 'Jie', 0 UNION ALL SELECT 'Coolidge', 'Kiran', 1 UNION ALL SELECT 'Adams', 'Noam', 4 UNION ALL SELECT 'Buchanan', 'Jie', 13) SELECT SUM(PointsScored) AS total_points, LastName, FirstName FROM PlayerStats GROUP BY 2, 3; /*--------------+----------+-----------+ | total_points | LastName | FirstName | +--------------+----------+-----------+ | 7 | Adams | Noam | | 13 | Buchanan | Jie | | 1 | Coolidge | Kiran | +--------------+----------+-----------*/ {code} -- This message was sent by Atlassian Jira (v8.20.10#820010)