[ 
https://issues.apache.org/jira/browse/HIVE-14431?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15990261#comment-15990261
 ] 

Remus Rusanu commented on HIVE-14431:
-------------------------------------

Since the original path from Jesus the simplify rules have moved into Calcite 
(RexSimplify). We have to follow up as a Calcite issue, and see if they 
desire/accept this rule.
An alternative is to do something similar to the 
{{HivePointLookupOptimizerRule}}, ie. have a RelOptRule for Filter/Join 
operators and inspect the condition for COALESCE => CASE simplification. This 
would be entirely in Hive space.

> Recognize COALESCE as CASE
> --------------------------
>
>                 Key: HIVE-14431
>                 URL: https://issues.apache.org/jira/browse/HIVE-14431
>             Project: Hive
>          Issue Type: Improvement
>          Components: CBO
>    Affects Versions: 2.2.0
>            Reporter: Jesus Camacho Rodriguez
>            Assignee: Remus Rusanu
>         Attachments: HIVE-14431.01.patch, HIVE-14431.2.patch, HIVE-14431.patch
>
>
> Transform:
> {code}
> (COALESCE(a, '')  = '') OR
>            (a = 'A' AND b = c)  OR
>            (a = 'B' AND b = d) OR
>            (a = 'C' AND b = e) OR
>            (a = 'D' AND b = f) OR
>            (a = 'E' AND b = g) OR
>            (a = 'F' AND b = h)
> {code}
> into:
> {code}
> (a='') OR
>            (a is null) OR
>            (a = 'A' AND b = c)  OR
>            (a = 'B' AND b = d) OR
>            (a = 'C' AND b = e) OR
>            (a = 'D' AND b = f) OR
>            (a = 'E' AND b = g) OR
>            (a = 'F' AND b = h)
> {code}
> With complex queries, this will lead us to factor more predicates that could 
> be pushed to the TS.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to