MODE¶
expr1 내의 값에 대해 가장 빈번한 값을 반환합니다. NULL 값은 무시됩니다. 모든 값이 NULL이거나 행이 0이면 함수는 NULL을 반환합니다.
구문¶
집계 함수
윈도우 함수
인자¶
expr1이 식은 가장 빈번한 값을 찾기 위해 검색되는 값을 생성합니다. 식은 다음 데이터 타입 중 하나일 수 있습니다.
BINARY
BOOLEAN
DATE
FLOAT
INTEGER
NUMBER
TIMESTAMP (TIMESTAMP_LTZ, TIMESTAMP_NTZ, TIMESTAMP_TZ)
VARCHAR
VARIANT
이 함수는 다음 데이터 타입을 지원하지 않습니다.
ARRAY
GEOGRAPHY
OBJECT
expr2데이터를 그룹으로 분할할 선택적 식입니다. 출력에는 각 그룹/파티션에 대한 가장 빈번한 값이 포함됩니다.
반환¶
반환된 값의 데이터 타입은 입력 식의 데이터 타입과 동일합니다.
사용법 노트¶
가장 빈번한 값에 동점이 있는 경우(두 개 이상의 값이 서로 마찬가지로 자주 발생하고, 다른 어떤 값보다 더 자주 발생하는 경우), MODE는 해당 값 중 하나를 반환합니다.
이 함수에는 DISTINCT가 지원되지 않습니다.
NULL이 가장 빈번한 값이더라도 함수는 NULL을 반환하지 않습니다(모든 값이 NULL인 경우가 아닌 한).
이 함수가 윈도우 함수로 호출되는 경우에는 다음을 지원하지 않습니다.
OVER 절 내의 ORDER BY 절.
명시적 윈도우 프레임.
예¶
다음 코드는 MODE 함수의 사용법을 보여줍니다.
테이블과 데이터를 만듭니다.
v 열에 대한 MODE 값을 가져옵니다. 행이 없기 때문에 함수는 NULL을 반환합니다.
일부 행을 삽입합니다.
MODE 함수는 가장 빈도가 높은 값 10 을 반환합니다.
행을 몇 개 더 삽입합니다.
이제 가장 빈도가 높은 값이 2개 있습니다. MODE 함수는 값 10 을 선택합니다.
NULL 값이 있는 행을 삽입합니다.
각 그룹의 MODE 값을 가져옵니다. 그룹 k = 3 에는 NULL 값만 포함되므로 해당 그룹에 대해 반환된 값은 NULL입니다.
MODE 함수는 OVER 절과 함께 기본 윈도우 함수로 사용할 수도 있습니다.