You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@drill.apache.org by "Victoria Markman (JIRA)" <ji...@apache.org> on 2015/04/28 20:34:06 UTC
[jira] [Commented] (DRILL-2355) TRUNC function returns incorrect
result when second parameter is specified
[ https://issues.apache.org/jira/browse/DRILL-2355?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14517612#comment-14517612 ]
Victoria Markman commented on DRILL-2355:
-----------------------------------------
round has the same behavior:
{code}
0: jdbc:drill:schema=dfs> select round(123.123, 0) from sys.options limit 1;
+------------+
| EXPR$0 |
+------------+
| 123.0 |
+------------+
1 row selected (0.167 seconds)
{code}
> TRUNC function returns incorrect result when second parameter is specified
> --------------------------------------------------------------------------
>
> Key: DRILL-2355
> URL: https://issues.apache.org/jira/browse/DRILL-2355
> Project: Apache Drill
> Issue Type: Bug
> Components: Functions - Drill
> Affects Versions: 0.8.0
> Reporter: Victoria Markman
> Assignee: Mehant Baid
> Priority: Minor
> Labels: document_if_not_fixed
> Fix For: Future
>
>
> I believe our TRUNC function is modeled on Postgres TRUNC function.
> Semandics of Postgres TRUNC function:
> {code}
> postgres=# select trunc(1234.1234);
> trunc
> -------
> 1234
> (1 row)
> postgres=# select trunc(1234.1234, 0);
> trunc
> -------
> 1234
> (1 row)
> postgres=# select trunc(1234.1234, 2);
> trunc
> ---------
> 1234.12
> (1 row)
> postgres=# select trunc(1234.1234, -1);
> trunc
> -------
> 1230
> (1 row)
> postgres=# select trunc(1234.1234, -3);
> trunc
> -------
> 1000
> (1 row)
> {code}
> This is incorrect, I can't truncate to zero decimal places:
> {code}
> 0: jdbc:drill:schema=dfs> select trunc(1234.1234) from sys.options limit 1;
> +------------+
> | EXPR$0 |
> +------------+
> | 1234.0 |
> +------------+
> 1 row selected (0.133 seconds)
> 0: jdbc:drill:schema=dfs> select trunc(1234.1234,0) from sys.options limit 1;
> +------------+
> | EXPR$0 |
> +------------+
> | 1234.0 |
> +------------+
> 1 row selected (0.065 seconds)
> {code}
> Second negative parameter, does not do what it is supposed to do as well:
> {code}
> 0: jdbc:drill:schema=dfs> select trunc(1234.1234, -1) from sys.options limit 1;
> +------------+
> | EXPR$0 |
> +------------+
> | 1230.0 |
> +------------+
> 1 row selected (0.068 seconds)
> 0: jdbc:drill:schema=dfs> select trunc(1234.1234, -3) from sys.options limit 1;
> +------------+
> | EXPR$0 |
> +------------+
> | 1000.0 |
> +------------+
> 1 row selected (0.072 seconds)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)