카테고리:

집계 함수 (카디널리티 추정) , 윈도우 함수

HLL

HyperLogLog를 사용해 입력값 고유 카디널리티의 근삿값을 반환합니다(즉, HLL(col1, col2, ... )COUNT(DISTINCT col1, col2, ... ) 의 근삿값을 반환함).

HyperLogLog에 대한 자세한 내용은 고유 값 개수 추정하기 를 참조하십시오.

별칭:

APPROX_COUNT_DISTINCT.

참고 항목:

HLL_ACCUMULATE , HLL_COMBINE , HLL_ESTIMATE

구문

집계 함수

HLL( [ DISTINCT ] <expr1> [ , ... ] )

HLL(*)

윈도우 함수

HLL( [ DISTINCT ] <expr1> [ , ... ] ) OVER ( [ PARTITION BY <expr2> ] )

HLL(*) OVER ( [ PARTITION BY <expr2> ] )

인자

expr1

고유 값의 수를 파악하려는 식입니다.

expr2

행을 파티션으로 그룹화하는 데 사용되는 선택적 식입니다.

반환

반환된 값의 데이터 타입은 INTEGER 입니다.

사용법 노트

  • DISTINCT 는 인자로 포함될 수 있지만, 효과는 없습니다.

  • NULL 값 및 집계 함수에 대한 자세한 내용은 집계 함수 및 NULL 값 을 참조하십시오.

  • 윈도우 함수로 사용되는 경우:

    • 이 함수는 다음을 지원하지 않습니다.

      • OVER() 절의 ORDER BY 하위 절.

      • 윈도우 프레임.

This example shows how to use HLL and its alias APPROX_COUNT_DISTINCT. This example calls both COUNT(DISTINCT i) and APPROX_COUNT_DISTINCT(i) to emphasize that the results of these two functions do not always match exactly.

The exact output from the following query might vary because APPROX_COUNT_DISTINCT() returns an approximation, not an exact value.

SELECT COUNT(i), COUNT(DISTINCT i), APPROX_COUNT_DISTINCT(i), HLL(i)
  FROM sequence_demo;
+----------+-------------------+--------------------------+--------+
| COUNT(I) | COUNT(DISTINCT I) | APPROX_COUNT_DISTINCT(I) | HLL(I) |
|----------+-------------------+--------------------------+--------|
|     1024 |              1024 |                     1007 |   1007 |
+----------+-------------------+--------------------------+--------+
맨 위로 이동