Aller au contenu principal

exists function

Applies to: check marked yes Databricks SQL check marked yes Databricks Runtime

Returns true if func is true for any element in expr or query returns at least one row.

Syntax​

exists(expr, func)
exists(query)

Arguments​

  • expr: An ARRAY expression.
  • func: A lambda function.
  • query: Any Query.

Returns​

A BOOLEAN.

The lambda function must result in a boolean and operate on one parameter, which represents an element in the array.

exists(query) can only be used in the WHERE clause and few other specific cases.

Examples​

SQL
> SELECT exists(array(1, 2, 3), x -> x % 2 == 0);
true
> SELECT exists(array(1, 2, 3), x -> x % 2 == 10);
false
> SELECT exists(array(1, NULL, 3), x -> x % 2 == 0);
NULL
> SELECT exists(array(0, NULL, 2, 3, NULL), x -> x IS NULL);
true
> SELECT exists(array(1, 2, 3), x -> x IS NULL);
false

> SELECT count(*) FROM VALUES(1)
WHERE exists(SELECT * FROM VALUES(1), (2), (3) AS t(c1) WHERE c1 = 2);
1
> SELECT count(*) FROM VALUES(1)
WHERE exists(SELECT * FROM VALUES(1), (NULL), (3) AS t(c1) WHERE c1 = 2);
0
> SELECT count(*) FROM VALUES(1)
WHERE NOT exists(SELECT * FROM VALUES(1), (NULL), (3) AS t(c1) WHERE c1 = 2);
1