Julian Hyde created CALCITE-4154:
------------------------------------

             Summary: Add a rule to merge a Project onto an Aggregate
                 Key: CALCITE-4154
                 URL: https://issues.apache.org/jira/browse/CALCITE-4154
             Project: Calcite
          Issue Type: Bug
            Reporter: Julian Hyde


Add a rule to merge a {{Project}} onto an {{Aggregate}}. In practice, it means 
that aggregate functions that are not used in the Project are removed from the 
Aggregate.

For example,
{code:java}
SELECT deptno, sum_sal
FROM (
  SELECT deptno, job, SUM(sal) AS sum_sal, MIN(ename) AS min_ename
  FROM emp
  GROUP BY deptno, job)
{code}
becomes
{code:java}
SELECT deptno, sum_sal
FROM (
  SELECT deptno, job, SUM(sal) AS sum_sal
  FROM emp
  GROUP BY deptno, job)
{code}
Note that {{min_ename}} is removed from the {{Aggregate}} (because it is not 
used by the {{Project}}). {{job}} is not used, but it remains because it is a 
{{GROUP BY}} key.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to