Перейти к основному содержанию
ClickHouse поддерживает все стандартные агрегатные функции SQL (sum, avg, min, max, count), а также множество других агрегатных функций.
СтраницаОписание
aggThrowЭту функцию можно использовать для проверки безопасности исключений. Она с указанной вероятностью сгенерирует исключение при создании.
analysisOfVarianceВыполняет статистический тест для однофакторного дисперсионного анализа (тест ANOVA). Это тест для нескольких групп нормально распределённых наблюдений, который позволяет определить, одинаково ли среднее значение у всех групп.
anyВыбирает первое встретившееся значение столбца.
anyHeavyВыбирает часто встречающееся значение с помощью алгоритма heavy hitters. Если существует значение, которое встречается более чем в половине случаев в каждом потоке выполнения запроса, возвращается это значение. Обычно результат недетерминирован.
anyLastВыбирает последнее встретившееся значение столбца.
approx_top_kВозвращает массив приблизительно наиболее частых значений и их количеств в указанном столбце.
approx_top_sumВозвращает массив приблизительно наиболее частых значений и их количеств в указанном столбце.
argAndMaxВычисляет значения arg и val для максимального значения val. Если есть несколько строк, в которых максимальное значение val одинаково, то какое из соответствующих значений arg и val будет возвращено, недетерминировано.
argAndMinВычисляет значения arg и val для минимального значения val. Если есть несколько строк, в которых минимальное значение val одинаково, то какое из соответствующих значений arg и val будет возвращено, недетерминировано.
argMaxВычисляет значение arg для максимального значения val.
argMinВычисляет значение arg для минимального значения val. Если есть несколько строк, в которых максимальное значение val одинаково, то какое из соответствующих значений arg будет возвращено, недетерминировано.
avgВычисляет среднее арифметическое.
avgWeightedВычисляет взвешенное среднее арифметическое.
boundingRatioАгрегатная функция, которая вычисляет наклон между крайней левой и крайней правой точками в группе значений.
categoricalInformationValueВычисляет значение (P(tag = 1) - P(tag = 0))(log(P(tag = 1)) - log(P(tag = 0))) для каждой категории.
contingencyФункция contingency вычисляет коэффициент сопряжённости — величину, измеряющую связь между двумя столбцами в таблице. Вычисление похоже на функцию cramersV, но отличается знаменателем под квадратным корнем.
corrВычисляет коэффициент корреляции Пирсона.
corrMatrixВычисляет корреляционную матрицу для N переменных.
corrStableВычисляет коэффициент корреляции Пирсона, но использует численно стабильный алгоритм.
countПодсчитывает количество строк или значений, не равных NULL.
covarPopВычисляет ковариацию генеральной совокупности
covarPopMatrixВозвращает матрицу ковариации генеральной совокупности для N переменных.
covarPopStableВычисляет значение ковариации генеральной совокупности
covarSampВычисляет значение Σ((x - x̅)(y - y̅)) / (n - 1)
covarSampMatrixВозвращает выборочную матрицу ковариации для N переменных.
covarSampStableАналогична covarSamp, но работает медленнее и обеспечивает меньшую вычислительную погрешность.
cramersVРезультат функции cramersV находится в диапазоне от 0 (что соответствует отсутствию связи между переменными) до 1 и может достигать 1 только тогда, когда каждое значение полностью определяется другим. Его можно рассматривать как связь между двумя переменными в процентах от их максимально возможной вариации.
cramersVBiasCorrectedВычисляет Cramer’s V, но использует поправку на смещение.
deltaSumСуммирует арифметическую разность между последовательными строками.
deltaSumTimestampДобавляет разность между последовательными строками. Если разность отрицательная, она игнорируется.
distinctDynamicTypesВычисляет список различных типов данных, хранящихся в столбце типа Dynamic.
distinctJSONPathsВычисляет список различных путей, хранящихся в JSON-столбце.
distinctJSONPathsAndTypesВычисляет список различных путей и их типов, хранящихся в JSON.
entropyВычисляет энтропию Шеннона для столбца значений.
estimateCompressionRatioОценивает коэффициент сжатия заданного столбца без его фактического сжатия.
exponentialMovingAverageВычисляет экспоненциальное скользящее среднее значений за заданный период времени.
exponentialTimeDecayedAvgВозвращает экспоненциально сглаженное взвешенное скользящее среднее значений временного ряда в момент времени t.
exponentialTimeDecayedCountВозвращает накопленное экспоненциальное затухание для временного ряда в момент времени с индексом t.
exponentialTimeDecayedMaxВозвращает максимум между вычисленным экспоненциально сглаженным скользящим средним в момент времени с индексом t и значением в t-1.
exponentialTimeDecayedSumВозвращает сумму значений экспоненциально сглаженного скользящего среднего временного ряда в момент времени с индексом t.
first_valueЭто псевдоним для any, введённый для совместимости с оконными функциями, где иногда требуется обрабатывать значения NULL (по умолчанию все агрегатные функции ClickHouse игнорируют значения NULL).
flameGraphАгрегатная функция, которая строит флеймграф на основе списка трассировок стека.
groupArrayСоздаёт массив из значений аргумента. Значения могут добавляться в массив в любом (неопределённом) порядке.
groupArrayArrayАгрегирует массивы в один более крупный массив.
groupArrayInsertAtВставляет значение в массив в указанную позицию.
groupArrayIntersectВозвращает пересечение заданных массивов (то есть все элементы, присутствующие во всех указанных массивах).
groupArrayLastСоздаёт массив из последних значений аргумента.
groupArrayMovingAvgВычисляет скользящее среднее входных значений.
groupArrayMovingSumВычисляет скользящую сумму входных значений.
groupArraySampleСоздаёт массив из выборки значений аргумента. Размер результирующего массива ограничен max_size элементами. Значения аргумента выбираются и добавляются в массив случайным образом.
groupArraySortedВозвращает массив с первыми N элементами в порядке возрастания.
groupBitAndПрименяет побитовое AND к последовательности чисел.
groupBitmapВыполняет вычисления с битмапом или агрегирование для столбца с беззнаковыми целыми числами; возвращает мощность типа UInt64, а при добавлении суффикса -State — объект битмапа.
groupBitmapAndВычисляет AND для столбца битмапа; возвращает мощность типа UInt64, а при добавлении суффикса -State — объект битмапа.
groupBitmapOrВычисляет OR для столбца битмапа; возвращает мощность типа UInt64, а при добавлении суффикса -State — объект битмапа. Это эквивалентно groupBitmapMerge.
groupBitmapXorВычисляет XOR для столбца битмапа и возвращает мощность типа UInt64, а при использовании суффикса -State — объект битмапа.
groupBitOrПрименяет побитовое OR к последовательности чисел.
groupBitXorПрименяет побитовое XOR к последовательности чисел.
groupConcatВычисляет конкатенированную строку из группы строк, при необходимости разделённых разделителем и ограниченных максимальным количеством элементов.
groupUniqArrayСоздаёт массив из различных значений аргумента.
intervalLengthSumВычисляет суммарную длину объединения всех диапазонов (сегментов на числовой оси).
kolmogorovSmirnovTestПрименяет критерий Колмогорова — Смирнова к выборкам из двух совокупностей.
kurtPopВычисляет эксцесс последовательности.
kurtSampВычисляет выборочный эксцесс последовательности.
largestTriangleThreeBucketsПрименяет алгоритм Largest-Triangle-Three-Buckets к входным данным.
last_valueВыбирает последнее встретившееся значение, аналогично anyLast, но может принимать NULL.
mannWhitneyUTestПрименяет ранговый критерий Манна — Уитни к выборкам из двух совокупностей.
maxАгрегатная функция, вычисляющая максимум в группе значений.
maxIntersectionsАгрегатная функция, вычисляющая максимальное количество пересечений между интервалами в группе (если все интервалы пересекаются хотя бы один раз).
maxIntersectionsPositionАгрегатная функция, вычисляющая позиции, в которых достигается значение функции maxIntersections.
maxMapВычисляет максимум из массива value в соответствии с ключами, указанными в массиве key.
meanZTestПрименяет z-критерий для сравнения средних к выборкам из двух совокупностей.
medianФункции median* являются псевдонимами соответствующих функций quantile*. Они вычисляют медиану числовой выборки.
minАгрегатная функция, вычисляющая минимум в группе значений.
minMapВычисляет минимум из массива value в соответствии с ключами, указанными в массиве key.
quantileВычисляет приближённый квантиль последовательности числовых данных.
quantileBFloat16Вычисляет приближённый квантиль выборки, состоящей из чисел типа bfloat16.
quantileDDВычисляет приближённый квантиль выборки с гарантированной относительной погрешностью.
quantileDeterministicВычисляет приближённый квантиль последовательности числовых данных.
quantileExact FunctionsФункции quantileExact, quantileExactLow, quantileExactHigh, quantileExactExclusive, quantileExactInclusive
quantileExactExclusiveТочно вычисляет квантиль последовательности числовых данных.
quantileExactHighПодобно quantileExact, эта функция точно вычисляет квантиль последовательности числовых данных.
quantileExactInclusiveТочно вычисляет квантиль последовательности числовых данных.
quantileExactLowПодобно quantileExact, эта функция точно вычисляет квантиль последовательности числовых данных.
quantileExactWeightedТочно вычисляет квантиль последовательности числовых данных с учётом веса каждого элемента.
quantileExactWeightedInterpolatedВычисляет квантиль последовательности числовых данных с использованием линейной интерполяции с учётом веса каждого элемента.
quantileGKВычисляет квантиль последовательности числовых данных с использованием алгоритма Greenwald-Khanna.
quantileInterpolatedWeightedВычисляет квантиль последовательности числовых данных с использованием линейной интерполяции с учётом веса каждого элемента.
quantilePrometheusHistogramВычисляет квантиль гистограммы с использованием линейной интерполяции.
quantiles FunctionsФункции quantiles, quantilesExactExclusive, quantilesExactInclusive, quantilesGK
quantilesExactExclusiveТочно вычисляет квантили последовательности числовых данных.
quantilesExactInclusiveТочно вычисляет квантили последовательности числовых данных.
quantilesGKquantilesGK работает аналогично quantileGK, но позволяет одновременно вычислять квантили разных уровней и возвращает массив.
quantilesTimingWeightedС заданной точностью вычисляет квантиль последовательности числовых данных с учётом веса каждого элемента последовательности.
quantileTDigestВычисляет приближённую квантиль последовательности числовых данных с использованием алгоритма t-digest.
quantileTDigestWeightedВычисляет приближённую квантиль последовательности числовых данных с использованием алгоритма t-digest.
quantileTimingС заданной точностью вычисляет квантиль последовательности числовых данных.
quantileTimingWeightedС заданной точностью вычисляет квантиль последовательности числовых данных с учётом веса каждого элемента последовательности.
rankCorrВычисляет коэффициент ранговой корреляции.
simpleLinearRegressionВыполняет простую (одномерную) линейную регрессию.
singleValueOrNullАгрегатная функция singleValueOrNull используется для реализации операторов подзапросов, таких как x = ALL (SELECT ...). Она проверяет, есть ли в данных только одно уникальное значение, отличное от NULL.
skewPopВычисляет асимметрию последовательности.
skewSampВычисляет выборочную асимметрию последовательности.
sparkbarФункция строит частотную гистограмму для значений x и частоты их повторения y на интервале [min_x, max_x].
stddevPopРезультат равен квадратному корню из varPop.
stddevPopStableРезультат равен квадратному корню из varPop. В отличие от stddevPop, эта функция использует численно стабильный алгоритм.
stddevSampРезультат равен квадратному корню из varSamp.
stddevSampStableРезультат равен квадратному корню из varSamp. В отличие от stddevSamp, эта функция использует численно стабильный алгоритм.
stochasticLinearRegressionЭта функция реализует стохастическую линейную регрессию. Она поддерживает пользовательские параметры для скорости обучения, коэффициента L2-регуляризации, размера мини-батча, а также несколько методов обновления весов (Adam, простой SGD, Momentum, Nesterov).
stochasticLogisticRegressionЭта функция реализует стохастическую логистическую регрессию. Её можно использовать для задачи бинарной классификации; она поддерживает те же пользовательские параметры, что и stochasticLinearRegression, и работает аналогичным образом.
studentTTestПрименяет t-тест Стьюдента к выборкам из двух совокупностей.
studentTTestOneSampleПрименяет одновыборочный t-тест Стьюдента к выборке и известному среднему значению генеральной совокупности.
sumВычисляет сумму. Работает только с числами.
sumCountВычисляет сумму чисел и одновременно подсчитывает количество строк. Функция используется оптимизатором запросов ClickHouse: если в запросе есть несколько функций sum, count или avg, их можно заменить одной функцией sumCount, чтобы повторно использовать вычисления. Эту функцию редко требуется вызывать явно.
sumKahanВычисляет сумму чисел с использованием алгоритма компенсированного суммирования Кэхэна.
sumMapСуммирует один или несколько массивов value в соответствии с ключами, указанными в массиве key. Возвращает кортеж массивов: ключи в отсортированном порядке, а затем значения, суммированные для соответствующих ключей без переполнения.
sumMapWithOverflowСуммирует массив value в соответствии с ключами, указанными в массиве key. Возвращает кортеж из двух массивов: ключи в отсортированном порядке и значения, суммированные для соответствующих ключей. Отличается от функции sumMap тем, что выполняет суммирование с переполнением.
sumWithOverflowВычисляет сумму чисел, используя для результата тот же тип данных, что и для входных параметров. Если сумма превышает максимальное значение для этого типа данных, вычисление выполняется с переполнением.
theilsUФункция theilsU вычисляет коэффициент неопределённости Теила — величину, измеряющую связь между двумя столбцами в таблице.
timeSeriesChangesToGridАгрегатная функция, вычисляющая изменения в стиле PromQL во временных рядах на указанной сетке.
timeSeriesDeltaToGridАгрегатная функция, вычисляющая дельту в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesDerivToGridАгрегатная функция, вычисляющая производную в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesGroupArrayСортирует временные ряды по временной метке в порядке возрастания.
timeSeriesInstantDeltaToGridАгрегатная функция, вычисляющая idelta в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesInstantRateToGridАгрегатная функция, вычисляющая irate в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesLastTwoSamplesАгрегатная функция для ресемплирования данных временных рядов при вычислении irate и idelta в стиле PromQL.
timeSeriesPredictLinearToGridАгрегатная функция, вычисляющая линейный прогноз в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesRateToGridАгрегатная функция, вычисляющая rate в стиле PromQL для данных временных рядов на указанной сетке.
timeSeriesResampleToGridWithStalenessАгрегатная функция, выполняющая ресемплирование данных временных рядов на указанную сетку.
timeSeriesResetsToGridАгрегатная функция, вычисляющая resets в стиле PromQL для данных временных рядов на указанной сетке.
topKВозвращает массив приблизительно самых часто встречающихся значений в указанном столбце. Полученный массив сортируется по убыванию приблизительной частоты значений, а не самих значений.
topKWeightedВозвращает массив приблизительно самых часто встречающихся значений в указанном столбце. Полученный массив сортируется по убыванию приблизительной частоты значений, а не самих значений. Кроме того, учитывается вес значения.
uniqВычисляет приблизительное количество различных значений аргумента.
uniqCombinedВычисляет приблизительное количество различных значений аргумента.
uniqCombined64Вычисляет приблизительное количество различных значений аргумента. Аналогична uniqCombined, но использует 64-битный hash для всех типов данных, а не только для типа данных String.
uniqExactВычисляет точное количество различных значений аргумента.
uniqHLL12Вычисляет приблизительное количество различных значений аргумента с использованием алгоритма HyperLogLog.
uniqThetaВычисляет приблизительное количество различных значений аргумента с использованием Theta Sketch Framework.
varPopВычисляет дисперсию генеральной совокупности.
varPopStableВозвращает дисперсию генеральной совокупности. В отличие от varPop, эта функция использует численно стабильный алгоритм. Она работает медленнее, но дает меньшую вычислительную погрешность.
varSampВычисляет выборочную дисперсию набора данных.
varSampStableВычисляет выборочную дисперсию набора данных. В отличие от varSamp, эта функция использует численно стабильный алгоритм. Она работает медленнее, но дает меньшую вычислительную погрешность.
welchTTestПрименяет t-критерий Уэлча к выборкам из двух совокупностей.
Последнее изменение 10 июня 2026 г.