[
https://issues.apache.org/jira/browse/CALCITE-6277?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17819105#comment-17819105
]
Caican Cai commented on CALCITE-6277:
-------------------------------------
I'm not sure whether to improve this in calcite. It seems that mysql and
postgres have their own processing. I don't want to adapt mysql and postgres to
other SQL dialects. I hope calcite has its own processing method (but this
method is not error)
> About the processing of +infinity parameters and -infinity parameters in
> math function
> ---------------------------------------------------------------------------------------
>
> Key: CALCITE-6277
> URL: https://issues.apache.org/jira/browse/CALCITE-6277
> Project: Calcite
> Issue Type: Improvement
> Components: core
> Affects Versions: 1.36.0
> Reporter: Caican Cai
> Priority: Major
> Fix For: 1.37.0
>
>
> {code:java}
> log10('-Infinity');
> log2('-Infinity');
> power('Infinity',2){code}
> As above, using the + infinity function in some math functions will not
> report an error in calcite, but mysql and posgtres will not report an error.
> I think the + infinity parameter is meaningful in mathematics.
> {code:java}
> --postgres
> postgres=# select power('Infinity', -2);
> power
> -------
> 0
> (1 row)postgres=# select log('Infinity', 2);
> log
> -----
> 0
> (1 row)postgres=# select log10('Infinity');
> log10
> ----------
> Infinity
> (1 row)postgres=# select power('Infinity', 2);
> power
> ----------
> Infinity
> (1 row)
>
> --mysql
> mysql> select log10('+Infinity');
> +--------------------+
> | log10('+Infinity') |
> +--------------------+
> | NULL |
> +--------------------+
> 1 row in set, 2 warnings (0.00 sec)mysql> select power('Infinity', 2);
> +----------------------+
> | power('Infinity', 2) |
> +----------------------+
> | 0 |
> +----------------------+
> 1 row in set, 1 warning (0.00 sec)mysql> select power('-Infinity', 2);
> +-----------------------+
> | power('-Infinity', 2) |
> +-----------------------+
> | 0 |
> +-----------------------+
> 1 row in set, 1 warning (0.00 sec)mysql> select log10('-Infinity');
> +--------------------+
> | log10('-Infinity') |
> +--------------------+
> | NULL |
> +--------------------+
> 1 row in set, 2 warnings (0.00 sec)
> {code}
--
This message was sent by Atlassian Jira
(v8.20.10#820010)