You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Julian Hyde (JIRA)" <ji...@apache.org> on 2015/05/16 02:02:50 UTC
[jira] [Created] (CALCITE-733) Multiple distinct-COUNT query gives
wrong results
Julian Hyde created CALCITE-733:
-----------------------------------
Summary: Multiple distinct-COUNT query gives wrong results
Key: CALCITE-733
URL: https://issues.apache.org/jira/browse/CALCITE-733
Project: Calcite
Issue Type: Bug
Reporter: Julian Hyde
Assignee: Julian Hyde
The query {code}select "department_id" as d, count(distinct "education_level") as c1, count(distinct "gender") as c2 from foodmart_clone."employee" group by "department_id";{code} returns 0 rows and should return 12. In the plan {noformat}EnumerableCalc(expr#0..3=[{inputs}], department_id=[$t2], C1=[$t3], C2=[$t1])
EnumerableJoin(condition=[=($0, $2)], joinType=[inner])
EnumerableAggregate(group=[{0}], groups=[[{7}]], C2=[COUNT($1)])
EnumerableAggregate(group=[{7, 15}])
EnumerableTableScan(table=[[FOODMART_CLONE, employee]])
EnumerableAggregate(group=[{0}], groups=[[{7}]], C1=[COUNT($1)])
EnumerableAggregate(group=[{7, 13}])
EnumerableTableScan(table=[[FOODMART_CLONE, employee]])
{noformat} you can see {{group=[{0}], groups=[[{7}]] }} and this is wrong -- the groups should be made up of the same bits as the group. We should add an assert on this invariant and fixing it will probably cause the plan to return the right results.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)