percentile
집계 함수
적용 대상: Databricks SQL Databricks Runtime
그룹의 지정된 percentage
에서 expr
의 정확한 백분위수 값을 반환합니다.
구문
percentile ( [ALL | DISTINCT] expr, percentage [, frequency] ) [FILTER ( WHERE cond ) ]
이 함수는 OVER
절을 사용하여 창 함수로 호출할 수도 있습니다.
인수
expr
: 숫자로 계산되는 식입니다.percentage
: 0과 1 사이의 숫자 식 또는 각각 0과 1 사이의 숫자 식 ARRAY입니다.frequency
: 0보다 큰 선택적 정수 리터럴입니다.cond
: 집계에 사용되는 행을 필터링하는 선택적 부울 식입니다.
반품
percentage
이 숫자이면 DOUBLE이고, percentage
이 ARRAY이면 DOUBLE의 ARRAY입니다.
빈도는 expr
을 계산해야 하는 횟수를 나타냅니다. 특정 값에 대한 빈도 10은 빈도 1에서 창에 10번 나타나는 값과 같습니다.
기본 빈도는 1입니다.
DISTINCT
가 지정되면 함수는 고유한 expr
값 집합에서만 작동합니다.
예제
> SELECT percentile(col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
6.0
> SELECT percentile(DISTINCT col, 0.3) FROM VALUES (0), (10), (10) AS tab(col);
3.0
> SELECT percentile(col, 0.3, freq) FROM VALUES (0, 1), (10, 2) AS tab(col, freq);
6.0
> SELECT percentile(col, array(0.25, 0.75)) FROM VALUES (0), (10) AS tab(col);
[2.5,7.5]