[ https://issues.apache.org/jira/browse/IMPALA-7740?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Alex Rodoni reassigned IMPALA-7740: ----------------------------------- Assignee: Alex Rodoni > Incorrect doc description for nvl2() > ------------------------------------ > > Key: IMPALA-7740 > URL: https://issues.apache.org/jira/browse/IMPALA-7740 > Project: IMPALA > Issue Type: Bug > Components: Docs > Affects Versions: Impala 3.0 > Reporter: Paul Rogers > Assignee: Alex Rodoni > Priority: Major > > Impala offers the NVL2() function from > [Oracle|https://docs.oracle.com/cd/B28359_01/olap.111/b28126/dml_functions_2049.htm#OLADM625]. > A clearer definition is > [here|https://www.techonthenet.com/oracle/functions/nvl2.php]: > {quote} > The syntax for the NVL2 function in Oracle/PLSQL is: > {{NVL2( string1, value_if_not_null, value_if_null )}} > {quote} > Contrast that with the [Impala > description|https://impala.apache.org/docs/build3x/html/topics/impala_conditional_functions.html]: > {quote} > Enhanced variant of the nvl() function. Tests an expression and returns > different result values depending on whether it is NULL or not. _If the first > argument is NULL, returns the second argument. If the first argument is not > NULL, returns the third argument._ Equivalent to the nvl2() function from > Oracle Database. > {quote} > (Emphasis added.) The description is exactly backward. To see this: > {noformat} > select n, nvl2(n, 10, 20) from ints; > +------+---------------------------+ > | n | if(n is not null, 10, 20) | > +------+---------------------------+ > | NULL | 20 | > | 0 | 10 | > +------+---------------------------+ > {noformat} > Hence, the implementation follows Oracle, the documentation is wrong. -- This message was sent by Atlassian JIRA (v7.6.3#76005) --------------------------------------------------------------------- To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org For additional commands, e-mail: issues-all-h...@impala.apache.org