Aracılığıyla paylaş


exists işlevi

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

içindeki func herhangi bir öğe için true ise expr true döndürür veya query en az bir satır döndürür.

Söz dizimi

exists(expr, func)
exists(query)

Argümanlar

  • expr: ARRAY ifadesi.
  • func: Lambda işlevi.
  • query: Herhangi bir Sorgu.

İadeler

BOOLEAN DEĞERİ

Lambda işlevi boole ile sonuçlanmalıdır ve dizideki bir öğeyi temsil eden bir parametre üzerinde çalışmalıdır.

exists(query) yalnızca WHERE yan tümcesinde ve diğer birkaç özel durumda kullanılabilir.

Örnekler

> 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