[ 
https://issues.apache.org/jira/browse/CALCITE-7116?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18011311#comment-18011311
 ] 

Julian Hyde commented on CALCITE-7116:
--------------------------------------

I can't think of many cases where UNION ALL is more efficient than GROUPING 
SETS but I have no objection to the rule. It is a valid transformation.

What is the name of the proposed class?

> Optimize queries with GROUPING SETS by converting them into equivalent UNION 
> ALL of GROUP BY operations.
> --------------------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-7116
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7116
>             Project: Calcite
>          Issue Type: New Feature
>          Components: core
>            Reporter: Zhen Chen
>            Assignee: Yu Xu
>            Priority: Minor
>             Fix For: 1.41.0
>
>
> Currently, GROUPING SETS operations may not be optimally executed in some 
> cases. This ticket proposes a rule to transform GROUPING SETS into a series 
> of UNION ALL operations, each with its own GROUP BY clause. 
> Original query:
> {code:java}
> SELECT a, b, c FROM t GROUP BY GROUPING SETS ((a,b), (a,c))
> {code}
> Transformed to:
> {code:java}
> SELECT a, b, NULL AS c FROM t GROUP BY a, b
> UNION ALL
> SELECT a, NULL AS b, c FROM t GROUP BY a, c
> {code}



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

Reply via email to