[ 
https://issues.apache.org/jira/browse/CALCITE-7594?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

ASF GitHub Bot updated CALCITE-7594:
------------------------------------
    Labels: pull-request-available  (was: )

> Support GROUP BY ALL
> --------------------
>
>                 Key: CALCITE-7594
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7594
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>            Reporter: Tisya Bhatia
>            Priority: Major
>              Labels: pull-request-available
>
> when GROUP BY ALL appears with no grouping items, the query groups by every 
> expression in the SELECT clause that is not an aggregate or window function.
> Example:
>   SELECT deptno, job, SUM(sal)
>   FROM emp
>   GROUP BY ALL;         
> ^ equivalent to GROUP BY deptno, job
> Motivation: keeps the GROUP BY in sync with the SELECT list automatically and 
> removes a common class of "column must appear in the GROUP BY clause" errors. 
> PostgreSQL, DuckDB, Trino and Spark all offer a form of this.
> Calcite already supports ALL/DISTINCT as a set quantifier on grouping sets 
> (e.g. GROUP BY ALL CUBE(a, b), where ALL is the default). The new behavior 
> applies ONLY when no grouping items follow ALL, so the two are unambiguous to 
> parse and existing behavior is unchanged. 
> Scope:
>  - GROUP BY ALL only. Positional GROUP BY (GROUP BY <ordinal>) is already 
> supported via SqlConformance.isGroupByOrdinal and is out of scope.
>  - ORDER BY ALL will be proposed as a separate issue.
>  - SELECT * with GROUP BY ALL is rejected with a clear error (star is not 
> expanded at group-validation time).
> A working prototype (parser + validator + tests + docs) is ready; a PR will 
> follow. A discussion will also be raised on [email protected].



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to