Uploaded image for project: 'Calcite'
  1. Calcite
  2. CALCITE-1781

Allow expression in CUBE and ROLLUP

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • None
    • 1.13.0
    • None
    • None

    Description

      Currently we only allow columns as arguments to CUBE and ROLLUP operators, whereas we allow expressions in the GROUP BY clause. This change would also allow expressions as arguments to CUBE and ROLLUP. Example:

      // the following are valid, and will remain valid
      select deptno from emp group by deptno; 
      select deptno +1 from emp group by deptno + 1;
      select deptno from emp group by cube(deptno);
      select deptno from emp group by rollup(deptno);
      
      // the following are currently invalid, but would be valid
      select deptno +1 from emp group by cube(deptno + 1, empno - 1);
      select deptno +1 from emp group by rollup(deptno + 1, empno - 1);
      

      Note that as of CALCITE-1306, and with SqlConformance.isGroupByOrdinal enabled, select deptno from emp group by cube(1) should be valid because 1 is interpreted as an ordinal in the SELECT clause, not an expression.

      Attachments

        Issue Links

          Activity

            People

              julianhyde Julian Hyde
              julianhyde Julian Hyde
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: