다음을 통해 공유


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]