approx_top_k

approx_top_k

지정된 컬럼에서 대략적으로 가장 빈번한 값들과 그 개수를 배열로 반환하는 집계 함수예요. 결과는 값의 대략적 빈도 기준 내림차순으로 정렬돼요.

출처: 문서

본문

v1.1.0에서 도입됐어요.

지정된 컬럼에서 대략적으로 가장 빈번한 값들과 그 개수를 배열로 반환해요. 결과 배열은 값의 대략적 빈도(값 자체가 아니라) 기준 내림차순으로 정렬돼요.

이 함수는 보장된 결과를 제공하지 않아요. 특정 상황에서는 오류가 발생할 수 있고, 가장 빈번한 값이 아닌 빈번한 값을 반환할 수도 있어요.

구문 (Syntax)

approx_top_k(N[, reserved])(column)

별칭 (Aliases)

approx_top_count

파라미터 (Parameters)

  • N — 반환할 요소 수. 기본값: 10. N의 최댓값 = 65536. UInt64
  • reserved — 선택 사항. 값에 대해 예약된 셀 개수를 정의해요. uniq(column) > reserved이면 결과가 근사치가 돼요. 기본값: N * 3. UInt64

인자 (Arguments)

  • column — 가장 빈번한 값을 찾을 컬럼 이름. String

반환 값 (Returned value)

대략적으로 가장 빈번한 값들과 그 개수를 담은 배열을 반환하며, 대략적 빈도 기준 내림차순으로 정렬돼요. Array

예시 (Examples)

사용 예시:

Query

SELECT approx_top_k(2)(k)
FROM VALUES('k Char, w UInt64', ('y', 1), ('y', 1), ('x', 5), ('y', 1), ('z', 10));

Response

┌─approx_top_k(2)(k)────┐
│ [('y',3,0),('x',1,0)] │
└───────────────────────┘

관련 항목 (See Also)

  • topK
  • topKWeighted
  • approx_top_sum

더 알아보기 (Learn more)