Partager via


Fonction exists

S’applique à : case marquée oui Databricks SQL case marquée oui 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