مشاركة عبر


exists دالة

ينطبق على: وضع علامة Databricks SQL وضع علامة Databricks Runtime

إرجاع true إذا كان func صحيحا لأي عنصر في expr أو query إرجاع صف واحد على الأقل.

بناء الجملة

exists(expr, func)
exists(query)

الوسيطات

  • expr: تعبير صفيف.
  • func: دالة lambda.
  • query: أي استعلام.

المرتجعات

قيمة منطقية.

يجب أن تؤدي الدالة lambda إلى قيمة منطقية وتعمل على معلمة واحدة، والتي تمثل عنصرا في الصفيف.

exists(query) يمكن استخدام فقط في عبارة WHERE وعدد قليل من الحالات المحددة الأخرى.

الأمثلة

> 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