ClickHouse/docs/ru/sql-reference/aggregate-functions/reference/uniq.md

2.2 KiB
Raw Blame History

toc_priority
190

uniq

Приближённо вычисляет количество различных значений аргумента.

uniq(x[, ...])

Аргументы

Функция принимает переменное число входных параметров. Параметры могут быть числовых типов, а также Tuple, Array, Date, DateTime, String.

Возвращаемое значение

  • Значение с типом данных UInt64.

Детали реализации

Функция:

  • Вычисляет хэш для всех параметров агрегации, а затем использует его в вычислениях.

  • Использует адаптивный алгоритм выборки. В качестве состояния вычисления функция использует выборку хэш-значений элементов размером до 65536.

    Этот алгоритм очень точен и очень эффективен по использованию CPU. Если запрос содержит небольшое количество этих функций, использование `uniq` почти так же эффективно,  как и использование других агрегатных функций.
    
  • Результат детерминирован (не зависит от порядка выполнения запроса).

Эту функцию рекомендуется использовать практически во всех сценариях.

Смотрите также