[ 
https://issues.apache.org/jira/browse/CALCITE-4817?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Xurenhe updated CALCITE-4817:
-----------------------------
    Description: 
Now, SubstitutionVisitor support `Query with distinct aggregate on the column 
is matched to the group list existing in target`, as CALCITE-4374 describes.

But. It's fail, when query aggregate with max/min based on the column, which is 
in the group by list of target.

Materialized view recognition should also success.
{code:java}
//代码占位符
@Test void testQueryNoDistinctOptionalityAggCallColInTargetGroupBy1() {
  final String mv = ""
      + "select \"name\", \"deptno\" "
      + "from \"emps\" group by \"name\", \"deptno\"";
  final String query = ""
      + "select \"name\", min(\"deptno\")\n"
      + "from \"emps\" group by \"name\"";
  sql(mv, query).ok();
}
{code}

  was:
Now, SubstitutionVisitor support `Query with distinct aggregate on the column 
is matched to the group list existing in target`, as 
[CALCITE-4374|https://issues.apache.org/jira/browse/CALCITE-4374] describes.

But, When query aggregate with max/min based on the column, which is in the 
group by list of target.

Materialized view recognition should also success.
{code:java}
//代码占位符
@Test void testQueryNoDistinctOptionalityAggCallColInTargetGroupBy1() {
  final String mv = ""
      + "select \"name\", \"deptno\" "
      + "from \"emps\" group by \"name\", \"deptno\"";
  final String query = ""
      + "select \"name\", min(\"deptno\")\n"
      + "from \"emps\" group by \"name\"";
  sql(mv, query).ok();
}
{code}


> Expand SubstitutionVisitor of Aggregate with max/min, which column is he 
> group by list of target
> ------------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-4817
>                 URL: https://issues.apache.org/jira/browse/CALCITE-4817
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>            Reporter: Xurenhe
>            Assignee: Xurenhe
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> Now, SubstitutionVisitor support `Query with distinct aggregate on the column 
> is matched to the group list existing in target`, as CALCITE-4374 describes.
> But. It's fail, when query aggregate with max/min based on the column, which 
> is in the group by list of target.
> Materialized view recognition should also success.
> {code:java}
> //代码占位符
> @Test void testQueryNoDistinctOptionalityAggCallColInTargetGroupBy1() {
>   final String mv = ""
>       + "select \"name\", \"deptno\" "
>       + "from \"emps\" group by \"name\", \"deptno\"";
>   final String query = ""
>       + "select \"name\", min(\"deptno\")\n"
>       + "from \"emps\" group by \"name\"";
>   sql(mv, query).ok();
> }
> {code}



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

Reply via email to