다음을 통해 공유


mode 집계 함수

적용 대상:체크 표시됨 Databricks SQL 체크 표시됨 Databricks Runtime 11.3 LTS 이상

그룹에서 가장 빈번한 NULL 값이 아닌 expr 값을 반환합니다.

modedeterministictrue로 설정되지 않는 한 비결정적 함수입니다.

구문

mode(expr [, deterministic ]) [FILTER ( WHERE cond ) ]

이 함수는 윈도우 함수로서 OVER 절을 사용하여 호출할 수도 있습니다.

논쟁

  • expr

    비교할 수 있는 모든 형식의 식입니다.

  • deterministic

    Databricks SQL 및 Databricks Runtime 14.1 이상에서 선택적 BOOLEAN 상수 식입니다. true 동일한 빈도의 여러 값이 있는 경우 결정적 결과를 보장하는 경우.

  • cond

    집계에 사용되는 행을 필터링하는 선택적 BOOLEAN 식입니다.

반품

결과 형식은 인수 형식과 일치합니다.

그룹에 null만 포함된 경우 함수는 NULL을 반환합니다. 가장 빈번한 값에 대해 동률인 경우 결과는 결정적이지 않습니다.

메모

deterministic true설정하더라도 결과는 STRING같은 특정 UTF8_LCASE 데이터 정렬에 대해 결정적이지 않을 수 있습니다.

예제

> SELECT mode(col) FROM VALUES (NULL), (1), (NULL), (2), (NULL), (3), (3) AS tab(col);
 3

> SELECT mode(col) FROM VALUES (array(1, 2)), (array(1, 2)), (array(2, 3)) AS tab(col);
 [1, 2]

-- The function returns either 1 or 2, but not 3
> SELECT mode(col) FROM VALUES (1), (1), (2), (2), (3) AS tab(col);
 1

> SELECT mode(col) FROM VALUES (NULL), (NULL) AS tab(col);
 NULL

> SELECT mode(col COLLATE UTF8_LCASE, true) FROM VALUES('a'), ('A'), ('b') AS tab(col);
 a (or A)