[
https://issues.apache.org/jira/browse/CALCITE-4806?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17421085#comment-17421085
]
Julian Hyde commented on CALCITE-4806:
--------------------------------------
[~nobigo], It's a different issue (rounding vs simplification), so they can be
fixed independently. Can you log it please, and link it to this issue. I don't
recall whether the standard specifies rounding direction, so we might still be
compliant. Also, please report what {{cast(-5.5 as int)}} returns.
> Lossy CAST is incorrectly simplified
> ------------------------------------
>
> Key: CALCITE-4806
> URL: https://issues.apache.org/jira/browse/CALCITE-4806
> Project: Calcite
> Issue Type: Bug
> Reporter: xuyangzhong
> Priority: Major
>
> the sql is following:
> {code:java}
> // code placeholder
> select cast(1.1 as int) = cast (1 as int){code}
> In SQLite the result is 1 and in postgreSQL the result is true.
> But in calcite the result is false.
> The bug is in RexSimplify and 1.1 and 1 are all converted to
> java.lang.Comparable, and 1.1 doesn't equal to 1. It ignores the source data
> type. The literal 1.1 should be cast to 1(int) first.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)