본문으로 바로가기
본문으로 바로가기

approx_top_sum

approx_top_sum

도입 버전: v1.1

지정한 컬럼에서 대략적으로 가장 자주 등장하는 값들과 그 개수를 배열로 반환합니다. 결과 배열은 값 자체가 아니라 값의 대략적인 등장 빈도를 기준으로 내림차순 정렬됩니다. 추가로, 값의 가중치도 함께 고려됩니다.

이 함수는 결과를 보장하지 않습니다. 특정 상황에서는 오차가 발생할 수 있으며, 실제로 가장 자주 등장하는 값이 아님에도 빈번한 값으로 반환되는 값이 있을 수 있습니다.

함께 보기

구문

approx_top_sum(N[, reserved])(column, weight)

매개변수

  • N — 반환할 요소의 개수입니다. 선택 사항입니다. 기본값: 10. UInt64
  • reserved — 선택 사항입니다. 값에 대해 얼마나 많은 셀을 예약할지 정의합니다. uniq(column) > reserved이면, topK 함수의 결과는 근사값이 됩니다. 기본값: N * 3. N의 최대값은 65536입니다. UInt64

인수

  • column — 가장 자주 나타나는 값을 찾을 컬럼의 이름입니다. String
  • weight — 가중치입니다. 각 값은 빈도 계산 시 weight번 반영됩니다. UInt64

반환 값

근사적으로 가장 자주 나타나는 값과 그 개수를, 근사 빈도의 내림차순으로 정렬한 배열로 반환합니다. Array

예시

사용 예시

SELECT approx_top_sum(2)(k, w)
FROM VALUES('k Char, w UInt64', ('y', 1), ('y', 1), ('x', 5), ('y', 1), ('z', 10));
┌─approx_top_sum(2)(k, w)─┐
│ [('z',10,0),('x',5,0)]  │
└─────────────────────────┘

참고