Funzione exists
Si applica a: Databricks SQL Databricks Runtime
Restituisce true se func
è true per qualsiasi elemento in expr
o query
restituisce almeno una riga.
Sintassi
exists(expr, func)
exists(query)
Argomenti
expr
: espressione ARRAY.func
: funzione lambda.query
: qualsiasi query.
Valori restituiti
Valore booleano.
La funzione lambda deve generare un valore booleano e operare su un parametro, che rappresenta un elemento nella matrice.
exists(query)
può essere usato solo nella clausola WHERE e in altri casi specifici.
Esempi
> 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