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

xiong duan commented on CALCITE-7044:
-------------------------------------

I try to find the issue about 'case x when null then 1 else x + 2 end' but i 
don't find it.

I think it's not available at the moment. If following this logic, CALCITE-7046 
should have thrown an exception, but it returned NULL. Even though the result 
is currently incorrect, this can verify that this logic does not exist.

> Add internal operator NOT NULL to enhance rewrite COALESCE operator
> -------------------------------------------------------------------
>
>                 Key: CALCITE-7044
>                 URL: https://issues.apache.org/jira/browse/CALCITE-7044
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: xiong duan
>            Priority: Major
>              Labels: pull-request-available
>
> Add internal operator NOT NULL to enhance rewrite COALESCE operator.
> This issue originated from the discussion of CALCITE-6978. 
> A new NOT NULL internal operator was added, indicating that this expression 
> will never be NULL. 
> The expression coalesce(a,b) can be transformed into CASE WHEN a is not null 
> THEN NOT NULL(a) ELSE b
> 1) `not null` operator doesn't do anything, just tell the validator this 
> filed is not null.
> 2) When we do RelToSQL, we can ignore it directly. 
> Notice:If the query contains nondeterministic function calls, like RANDOM. 
> Duplicating such will produce different results, 



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to