Поделиться через


tuple_sketch_agg_integer Агрегатная функция

Область применения:check помечена да Databricks Runtime 18.1 и выше

Создает tupleSketch datasketch из пар "ключ-значение", где ключи используются для разных значений подсчета и целочисленных суммарных значений, агрегируются в соответствии с указанным режимом.

Синтаксис

tuple_sketch_agg_integer ( key, summary [, lgNomEntries [, mode ]] )

Аргументы

  • ключ: выражение для уникального подсчета значений. Допустимые типы: INTEGER, LONG, FLOATDOUBLESTRING, BINARYARRAY<INTEGER>и .ARRAY<LONG>
  • сводкаINTEGER: значение, связанное с каждым ключом и агрегированное.
  • lgNomEntries: необязательный INTEGER литерал, указывающий log-base-2 номинальных записей. Должно быть от 4 до 26 включительно. Значение по умолчанию — 12 (4096 контейнеров). Более высокие значения обеспечивают более высокую точность, но используют больше памяти.
  • режим: необязательный STRING литерал, указывающий режим агрегирования для сводок. Допустимые значения: 'sum', 'min', 'max', 'alwaysone'. Значение по умолчанию — 'sum'.

Возвраты

BINARY Значение, содержащее сериализованный компактный tupleSketch с целыми сводками.

Примечания.

  • NULL значения ключа или сводки игнорируются во время агрегирования.
  • Пустые строки, пустые массивы байтов и пустые массивы игнорируются для ключей.
  • Значения lgNomEntries и mode параметры должны быть константами.
  • Используйте tuple_sketch_estimate_integer для получения оценки определенного количества.
  • Используйте tuple_sketch_summary_integer для получения агрегированного суммарного значения сводки.

Сообщения об ошибках

Примеры

-- Create sketch and get distinct count estimate
> SELECT tuple_sketch_estimate_integer(tuple_sketch_agg_integer(key, summary)) FROM VALUES (1, 5), (1, 1), (2, 2), (2, 3), (3, 2) tab(key, summary);
3.0

-- Get aggregated summary (sum mode by default)
> SELECT tuple_sketch_summary_integer(tuple_sketch_agg_integer(key, summary)) FROM VALUES (1, 1), (1, 2), (2, 3) tab(key, summary);
6