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

Mihai Budiu commented on CALCITE-6839:
--------------------------------------

Indeed, the type produced by aggregations seems to be a recurring topic, 
because different databases have different rules.
In a PR comment I suggested making the type inference of the aggregate result 
be part of the type system. Then we can accommodate different rules if users 
desire and we can stop arguing about the "right" way to do it.

> The SUM function sometimes throws overflow exceptions due to incorrect return 
> types
> -----------------------------------------------------------------------------------
>
>                 Key: CALCITE-6839
>                 URL: https://issues.apache.org/jira/browse/CALCITE-6839
>             Project: Calcite
>          Issue Type: Bug
>            Reporter: xiong duan
>            Assignee: xiong duan
>            Priority: Major
>              Labels: pull-request-available
>
>  The SQL in dummy.iq:
> {code:java}
> !use scott
> !set outputformat mysql
> select sum(mgr) from emp;
> !ok{code}
> Because the data type of MGR is TINYINT, according to SUM's data type 
> inference rules, the data type of SUM is also TINYINT.
> This SQL throws the exception:
> {code:java}
> java.sql.SQLException: Error while executing SQL "select sum(mgr) from emp": 
> Value 38835 out of range {code}



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

Reply via email to