[ 
https://issues.apache.org/jira/browse/HIVE-12082?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Szehon Ho updated HIVE-12082:
-----------------------------
    Description: 
In mysql comparisons if any of the entries are null, then the result is null.

[https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html|https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html]
 and 
[https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html|https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html].

This can be demonstrated by the following mysql query:

{noformat}
mysql> select greatest(1, null) from test;
+-------------------+
| greatest(1, null) |
+-------------------+
|              NULL |
+-------------------+
1 row in set (0.00 sec)

mysql> select greatest(-1, null) from test;
+--------------------+
| greatest(-1, null) |
+--------------------+
|               NULL |
+--------------------+
1 row in set (0.00 sec)
{noformat}

This is in contrast to Hive, where null are ignored in the comparisons.
{noformat}
hive> select greatest(null, 1) from test;
OK
1
{noformat}

  was:
In mysql comparisons if any of the entries are null, then the result is null.

[https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html|https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html]
 and 
[https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html|https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html].

This can be demonstrated by the following mysql query:

{noformat}
mysql> select greatest(1, null) from test;
+-------------------+
| greatest(1, null) |
+-------------------+
|              NULL |
+-------------------+
1 row in set (0.00 sec)

mysql> select greatest(-1, null) from test;
+--------------------+
| greatest(-1, null) |
+--------------------+
|               NULL |
+--------------------+
1 row in set (0.00 sec)
{noformat}

This is in contrast to Hive, where null does not win in greatest, least over 
values:

{noformat}
hive> select greatest(null, 1) from test;
OK
1
{noformat}


> Null comparison for greatest and least operator
> -----------------------------------------------
>
>                 Key: HIVE-12082
>                 URL: https://issues.apache.org/jira/browse/HIVE-12082
>             Project: Hive
>          Issue Type: Bug
>          Components: UDF
>            Reporter: Szehon Ho
>            Assignee: Szehon Ho
>         Attachments: HIVE-12082.patch
>
>
> In mysql comparisons if any of the entries are null, then the result is null.
> [https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html|https://dev.mysql.com/doc/refman/5.0/en/comparison-operators.html]
>  and 
> [https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html|https://dev.mysql.com/doc/refman/5.0/en/type-conversion.html].
> This can be demonstrated by the following mysql query:
> {noformat}
> mysql> select greatest(1, null) from test;
> +-------------------+
> | greatest(1, null) |
> +-------------------+
> |              NULL |
> +-------------------+
> 1 row in set (0.00 sec)
> mysql> select greatest(-1, null) from test;
> +--------------------+
> | greatest(-1, null) |
> +--------------------+
> |               NULL |
> +--------------------+
> 1 row in set (0.00 sec)
> {noformat}
> This is in contrast to Hive, where null are ignored in the comparisons.
> {noformat}
> hive> select greatest(null, 1) from test;
> OK
> 1
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to