You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@calcite.apache.org by "Julian Hyde (Jira)" <ji...@apache.org> on 2020/08/04 20:14:00 UTC

[jira] [Created] (CALCITE-4154) Add a rule to merge a Project onto an Aggregate

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)