[
https://issues.apache.org/jira/browse/CALCITE-4838?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
duan xiong updated CALCITE-4838:
--------------------------------
Description:
According to the SQL Strandard about how to cast an approximate numeric to int
in different database have different RoundingMode. for example:
In PostgreSQL、Mysql、Oracle(RoundingMode.HALF_UP):
{code:java}
select cast(5.1 as int) return 5
select cast(5.5 as int) return 6
select cast(-5.5 as int) return -6{code}
In Calcite、Sql Server 2008(RoundingMode.DOWN):
{code:java}
select cast(5.1 as int) return 5
select cast(5.5 as int) return 5
{code}
was:
According to the SQL Strandard about how to cast an approximate numeric to int
in different database have different RoundingMode. for example:
In PostgreSQL、Mysql、Oracle(RoundingMode.HALF_UP):
{code:java}
select cast(5.1 as int) return 5
select cast(5.5 as int) return 6
{code}
In Calcite、Sql Server 2008(RoundingMode.DOWN):
{code:java}
select cast(5.1 as int) return 5
select cast(5.5 as int) return 5
{code}
> add roundingMode in SqlConformance to document the rounding mode when cast
> an approximate numeric to int
> ---------------------------------------------------------------------------------------------------------
>
> Key: CALCITE-4838
> URL: https://issues.apache.org/jira/browse/CALCITE-4838
> Project: Calcite
> Issue Type: Bug
> Components: core
> Affects Versions: 1.27.0
> Reporter: duan xiong
> Assignee: duan xiong
> Priority: Major
>
> According to the SQL Strandard about how to cast an approximate numeric to
> int in different database have different RoundingMode. for example:
> In PostgreSQL、Mysql、Oracle(RoundingMode.HALF_UP):
> {code:java}
> select cast(5.1 as int) return 5
> select cast(5.5 as int) return 6
> select cast(-5.5 as int) return -6{code}
> In Calcite、Sql Server 2008(RoundingMode.DOWN):
> {code:java}
> select cast(5.1 as int) return 5
> select cast(5.5 as int) return 5
> {code}
>
--
This message was sent by Atlassian Jira
(v8.3.4#803005)