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