Partilhar via


kll_merge_agg_float função de agregação

Aplica-se a:assinalado Databricks SQL assinalado sim Databricks Runtime 18.0 e superiores

Consome múltiplos buffers de esboço KLL (K-Linear-Logarithmic) para estimação quantil aproximada em dados de ponto flutuante de precisão simples e funde-os num único buffer de resultados.

Sintaxe

kll_merge_agg_float ( sketch [, k ] )

Arguments

  • sketch: Um sketch KLL em formato binário (como o de kll_sketch_agg_float).
  • k: Uma precisão INTEGER opcional de controlo literal do esboço. Deve estar entre 8 e 65535. O padrão é 200. Valores mais altos proporcionam melhor precisão, mas consomem mais memória.

Devoluções

Um BINARY valor contendo o esboço KLL serializado fundido para dados de ponto flutuante de precisão simples.

Observações

  • Quando k não é especificado, o esboço fundido adota o valor k do primeiro esboço de entrada.
  • A operação de fusão trata esboços de entrada com diferentes valores de k.
  • NULL os valores são ignorados durante a agregação.
  • Use esta função ao fundir múltiplos esboços num contexto de agregação. Para fundir exatamente dois esboços, use a função escalar kll_sketch_merge_float em vez disso.

Mensagens de erro

Exemplos

-- Merge sketches with default k=200
> SELECT kll_sketch_get_n_float(kll_merge_agg_float(sketch))
  FROM (
    SELECT kll_sketch_agg_float(col) AS sketch
    FROM VALUES (1), (2), (3) AS tab(col)
    UNION ALL
    SELECT kll_sketch_agg_float(col) AS sketch
    FROM VALUES (4), (5), (6) AS tab(col)
  ) t;
6.0