Добавленный в: v1.1.0
Возвращает массив приблизительно самых часто встречающихся значений в указанном столбце. Результирующий массив сортируется по убыванию приблизительной частоты значений (а не по самим значениям).
Реализует алгоритм Filtered Space-Saving для вычисления TopK на основе алгоритма reduce-and-combine из Parallel Space Saving.
Эта функция не гарантирует точный результат. В некоторых случаях возможны ошибки, и она может возвращать часто встречающиеся значения, которые не являются самыми частыми.
См. также
Синтаксис
topK(N)(column)
topK(N, load_factor)(column)
topK(N, load_factor, 'counts')(column)
Параметры
N — Количество элементов, которые нужно вернуть. Значение по умолчанию: 10. Максимальное значение N = 65536. UInt64
load_factor — Необязательный параметр. Определяет, сколько ячеек резервируется для значений. Если uniq(column) > N * load_factor, результат функции topK будет приблизительным. Значение по умолчанию: 3. UInt64
counts — Необязательный параметр. Определяет, должен ли результат содержать приблизительное количество и значение ошибки. Bool
Аргументы
column — Имя столбца, для которого нужно найти наиболее часто встречающиеся значения. String
Возвращаемое значение
Возвращает массив приблизительно наиболее часто встречающихся значений, отсортированных по убыванию приблизительной частоты. Array
Примеры
Пример использования
SELECT topK(3)(AirlineID) AS res
FROM ontime;
┌─res─────────────────┐
│ [19393,19790,19805] │
└─────────────────────┘
См. также
Последнее изменение 10 июня 2026 г.