적용 대상:
Databricks SQL
Databricks Runtime 11.3 LTS 이상
그룹에서 가장 빈번한 NULL 값이 아닌 expr 값을 반환합니다.
mode는 deterministic가 true로 설정되지 않는 한 비결정적 함수입니다.
구문
mode(expr [, deterministic ]) [FILTER ( WHERE cond ) ]
이 함수는 윈도우 함수로서 OVER 절을 사용하여 호출할 수도 있습니다.
논쟁
expr비교할 수 있는 모든 형식의 식입니다.
deterministicDatabricks 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)