[ https://issues.apache.org/jira/browse/CALCITE-3144?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16876418#comment-16876418 ]
Julian Hyde commented on CALCITE-3144: -------------------------------------- [~gian], Do you recall the reason for this line? I don't think it's necessary, because I think the rewrite is valid even if there are {{GROUPING SETS}} etc. {code:java} if (aggregate.getGroupSets().size() != 1) { return false; } {code} > Add rule, CaseFilteredAggregatorRule, that converts "SUM(CASE WHEN b THEN x > END)" to "SUM(x) FILTER (WHERE b)" > -------------------------------------------------------------------------------------------------------------- > > Key: CALCITE-3144 > URL: https://issues.apache.org/jira/browse/CALCITE-3144 > Project: Calcite > Issue Type: Bug > Reporter: Julian Hyde > Priority: Major > > Add a rule that converts "SUM(CASE WHEN b THEN x END)" to "SUM\(x) FILTER > (WHERE b)". > Druid added {{CaseFilteredAggregatorRule}} in > https://github.com/apache/incubator-druid/pull/4360. > Maybe {{AggregateCaseToFilterRule}} is a slightly better name. Or maybe this > transform could be done in {{RelBuilder.aggregate}}, and we wouldn't need a > rule. -- This message was sent by Atlassian JIRA (v7.6.3#76005)