다음을 통해 공유


approx_count_distinct 집계 함수

적용 대상: 예로 표시된 확인 Databricks SQL 예로 표시된 확인 Databricks Runtime

그룹 내의 expr에서 예상 고유 값 수를 반환합니다.

구현은 최신 카디널리티 추정 알고리즘의 상태인 HyperLogLog++(HLL++) 알고리즘의 조밀한 버전을 사용합니다.

결과는 5%의 기본값 내에서 정확하며, 이는 아래 설명된 대로 매개 변수로 relativeSD 구성할 수 있지만 최대 상대 표준 편차의 값에서 파생됩니다.

구문

approx_count_distinct(expr[, relativeSD]) [FILTER ( WHERE cond ) ]

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

인수

  • expr: 동등성이 정의된 모든 형식일 수 있습니다.
  • relativeSD: 허용되는 최대 상대 표준 편차를 정의합니다.
  • cond: 집계에 사용되는 행을 필터링하는 선택적 부울 식입니다.

반품

BIGINT입니다.

예제

> SELECT approx_count_distinct(col1) FROM VALUES (1), (1), (2), (2), (3) tab(col1);
 3

> SELECT approx_count_distinct(col1) FILTER(WHERE col2 = 10)
    FROM VALUES (1, 10), (1, 10), (2, 10), (2, 10), (3, 10), (1, 12) AS tab(col1, col2);
 3