[
https://issues.apache.org/jira/browse/CALCITE-4346?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17218037#comment-17218037
]
Zhixiong Chen commented on CALCITE-4346:
----------------------------------------
SQL like : select cast(Column as varchar) from Table
If the Column is decimal type and the value is 0.25, however the result is .25
> strange result in toString function with bigdecimal type
> --------------------------------------------------------
>
> Key: CALCITE-4346
> URL: https://issues.apache.org/jira/browse/CALCITE-4346
> Project: Calcite
> Issue Type: Bug
> Components: core
> Reporter: Zhixiong Chen
> Priority: Major
>
> In SqlFunctions the toString function with BigDecimal type will replace 0.1
> with .1 .
> But why is this ?
> {code:java}
> public static String toString(BigDecimal x) {
> final String s = x.toString();
> if (s.equals("0")) {
> return s;
> } else if (s.startsWith("0.")) {
> // we want ".1" not "0.1"
> return s.substring(1);
> } else if (s.startsWith("-0.")) {
> // we want "-.1" not "-0.1"
> return "-" + s.substring(2);
> } else {
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)