メインコンテンツへスキップ
メインコンテンツへスキップ

approx_top_sum

指定したカラムに対して、近似的に最も頻出する値とその出現回数を含む配列を返します。結果の配列は、値そのものではなく、値の近似的な出現頻度が高い順(降順)にソートされます。さらに、値の重みも考慮されます。

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

この関数は結果が保証されません。特定の状況下では誤差が生じる可能性があり、最頻値ではない値を頻出値として返すことがあります。

N = 65536 が最大値です。

パラメータ

  • N — 返す要素数。省略可能。デフォルト値: 10。
  • reserved — 値のために確保しておくセル数を指定します。uniq(column) > reserved の場合、topK 関数の結果は近似値になります。省略可能。デフォルト値: N * 3。

引数

  • column — 出現頻度を計算する対象の値。
  • weight — 重み。各値は出現頻度計算において weight 回としてカウントされます。UInt64

クエリ:

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)]  │
└─────────────────────────┘

関連項目