You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@spark.apache.org by "Marco Gaido (JIRA)" <ji...@apache.org> on 2019/06/29 10:29:00 UTC

[jira] [Commented] (SPARK-28186) array_contains returns null instead of false when one of the items in the array is null

    [ https://issues.apache.org/jira/browse/SPARK-28186?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16875447#comment-16875447 ] 

Marco Gaido commented on SPARK-28186:
-------------------------------------

This is the right behavior AFAIK. Why are you saying it is wrong?

> array_contains returns null instead of false when one of the items in the array is null
> ---------------------------------------------------------------------------------------
>
>                 Key: SPARK-28186
>                 URL: https://issues.apache.org/jira/browse/SPARK-28186
>             Project: Spark
>          Issue Type: Bug
>          Components: SQL
>    Affects Versions: 2.3.0
>            Reporter: Alex Kushnir
>            Priority: Major
>
> If array of items contains a null item then array_contains returns true if item is found but if item is not found it returns null instead of false
> Seq(
> (1, Seq("a", "b", "c")),
> (2, Seq("a", "b", null, "c"))
> ).toDF("id", "vals").createOrReplaceTempView("tbl")
> spark.sql("select id, vals, array_contains(vals, 'a') as has_a, array_contains(vals, 'd') as has_d from tbl").show
>  +----+---------++----------+
> |id|vals|has_a|has_d|
> +----+---------++----------+
> |1|[a, b, c]|true|false|
> |2|[a, b,, c]|true|null|
> +----+---------++----------+



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@spark.apache.org
For additional commands, e-mail: issues-help@spark.apache.org