[
https://issues.apache.org/jira/browse/CALCITE-5089?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17522088#comment-17522088
]
yanjing.wang commented on CALCITE-5089:
---------------------------------------
Thanks [~julianhyde] , The SqlSelect structure is unchanged, but the validator
has added a few checks, that has few impacts for user who using ast in their
applications. I closed the pr-2769 and submitted a new
[pr-2771|https://github.com/apache/calcite/pull/2771] , please review.
> Allow GROUP BY ALL or DISTINCT set quantifier on GROUPING SETS
> --------------------------------------------------------------
>
> Key: CALCITE-5089
> URL: https://issues.apache.org/jira/browse/CALCITE-5089
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.30.0
> Environment: jdk8
> Reporter: yanjing.wang
> Assignee: yanjing.wang
> Priority: Major
> Labels: pull-request-available
> Fix For: 1.31.0
>
> Time Spent: 0.5h
> Remaining Estimate: 0h
>
> GROUP BY DISTINCT will be used to remove duplicate GROUPING SETS, for example:
> {code:java}
> SELECT product_id, product_class_id, count(*) from product GROUP BY DISTINCT
> CUBE (product_id, product_class_id), ROLLUP (product_id,
> product_class_id){code}
> it's equivalent to
> {code:java}
> SELECT product_id, product_class_id, count(*) from product GROUP BY GROUPING
> SETS ((product_id, product_class_id), (product_id), (product_class_id), ())
> {code}
> GROUP BY ALL will remain the duplicate GROUPING SETS, it's equivalent to
> GROUP BY, so most databases use ALL as the default set quantifier.
> As far as I know the PostgreSQL and Trino support this syntax.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)