exists Fungsi

Berlaku untuk:check ditandai ya pemeriksaan Databricks SQL ditandai ya Databricks Runtime

Mengembalikan true jika func benar untuk setiap elemen di expr atau query mengembalikan setidaknya satu baris.

Sintaks

exists(expr, func)
exists(query)

Argumen

  • expr: Ekspresi ARRAY.
  • func: Fungsi lambda.
  • query: Kueri apa pun.

Kembali

SEBUAH BOOLEAN.

Fungsi lambda harus menghasilkan boolean dan beroperasi pada satu parameter, yang mewakili elemen dalam array.

exists(query) hanya dapat digunakan dalam klausul WHERE dan beberapa kasus tertentu lainnya.

Contoh

> 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