exists 함수

적용 대상:검사 예 Databricks SQL 검사 예 Databricks Runtime으로 표시됨

의 모든 요소에 대해 가 true이면 func true를 expr 반환하거나 query 하나 이상의 행을 반환합니다.

구문

exists(expr, func)
exists(query)

인수

  • expr: ARRAY 식입니다.
  • func: 람다 함수입니다.
  • query: 모든 쿼리입니다.

반환

부울입니다.

람다 함수는 부울을 생성하고 배열의 요소를 나타내는 하나의 매개 변수에서 작동해야 합니다.

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