exists Functie

Van toepassing op:controleren met ja Databricks SQL-controle gemarkeerd als ja Databricks Runtime

Retourneert true als func waar is voor een element in expr of query retourneert ten minste één rij.

Syntaxis

exists(expr, func)
exists(query)

Argumenten

  • expr: Een MATRIX-expressie.
  • func: Een lambda-functie.
  • query: elke query.

Retourneert

EEN BOOLEAANSE WAARDE.

De lambda-functie moet resulteren in een booleaanse waarde en werken op één parameter, die een element in de matrix vertegenwoordigt.

exists(query) kan alleen worden gebruikt in de WHERE-component en enkele andere specifieke gevallen.

Voorbeelden

> 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