Fonction exists
S’applique à : Databricks SQL Databricks Runtime
Retourne true si func
a la valeur true pour tout élément dans expr
, ou si query
retourne au moins une ligne.
Syntaxe
exists(expr, func)
exists(query)
Arguments
expr
: expression ARRAY.func
: fonction lambda.query
: n’importe quelle Requête.
Retours
Une valeur BOOLÉENNE.
La fonction lambda doit générer une valeur booléenne et opérer sur un paramètre représentant un élément dans le tableau.
exists(query)
peut être utilisé uniquement dans la clause WHERE et dans quelques autres cas spécifiques.
Exemples
> 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