Passer au contenu principal
ClickHouse prend en charge toutes les fonctions d’agrégation SQL standard (sum, avg, min, max, count), ainsi qu’un grand nombre d’autres fonctions d’agrégation.
PageDescription
aggThrowCette fonction peut être utilisée pour tester la sécurité des exceptions. Elle lèvera une exception lors de sa création avec la probabilité spécifiée.
analysisOfVarianceFournit un test statistique d’analyse de variance à un facteur (test ANOVA). Il s’agit d’un test appliqué à plusieurs groupes d’observations suivant une distribution normale afin de déterminer si tous les groupes ont la même moyenne.
anySélectionne la première valeur rencontrée d’une colonne.
anyHeavySélectionne une valeur fréquente à l’aide de l’algorithme heavy hitters. S’il existe une valeur qui apparaît dans plus de la moitié des cas dans chacun des threads d’exécution de la requête, cette valeur est renvoyée. En général, le résultat n’est pas déterministe.
anyLastSélectionne la dernière valeur rencontrée d’une colonne.
approx_top_kRenvoie un Array des valeurs approximativement les plus fréquentes et de leur nombre d’occurrences dans la colonne spécifiée.
approx_top_sumRenvoie un Array des valeurs approximativement les plus fréquentes et de leur nombre d’occurrences dans la colonne spécifiée.
argAndMaxCalcule les valeurs arg et val pour une valeur val maximale. S’il existe plusieurs lignes avec une valeur val égale au maximum, la paire arg et val associée qui est renvoyée n’est pas déterministe.
argAndMinCalcule les valeurs arg et val pour une valeur val minimale. S’il existe plusieurs lignes avec une valeur val égale au minimum, la paire arg et val associée qui est renvoyée n’est pas déterministe.
argMaxCalcule la valeur arg pour une valeur val maximale.
argMinCalcule la valeur arg pour une valeur val minimale. S’il existe plusieurs lignes avec une valeur val égale au maximum, la valeur arg associée qui est renvoyée n’est pas déterministe.
avgCalcule la moyenne arithmétique.
avgWeightedCalcule la moyenne arithmétique pondérée.
boundingRatioFonction d’agrégation qui calcule la pente entre les points les plus à gauche et les plus à droite sur un groupe de valeurs.
categoricalInformationValueCalcule la valeur de (P(tag = 1) - P(tag = 0))(log(P(tag = 1)) - log(P(tag = 0))) pour chaque catégorie.
contingencyLa fonction contingency calcule le coefficient de contingence, une valeur qui mesure l’association entre deux colonnes d’une table. Le calcul est similaire à celui de la fonction cramersV, mais avec un dénominateur différent sous la racine carrée.
corrCalcule le coefficient de corrélation de Pearson.
corrMatrixCalcule la matrice de corrélation sur N variables.
corrStableCalcule le coefficient de corrélation de Pearson, mais utilise un algorithme numériquement stable.
countCompte le nombre de lignes ou de valeurs non NULL.
covarPopCalcule la covariance de population.
covarPopMatrixRenvoie la matrice de covariance de population sur N variables.
covarPopStableCalcule la valeur de la covariance de population.
covarSampCalcule la valeur de Σ((x - x̅)(y - y̅)) / (n - 1).
covarSampMatrixRenvoie la matrice de covariance d’échantillon sur N variables.
covarSampStableSemblable à covarSamp, mais fonctionne plus lentement tout en offrant une erreur de calcul plus faible.
cramersVLe résultat de la fonction cramersV varie de 0 (ce qui correspond à l’absence d’association entre les variables) à 1, et ne peut atteindre 1 que lorsque chaque valeur est entièrement déterminée par l’autre. Il peut être interprété comme l’association entre deux variables sous forme de pourcentage de leur variation maximale possible.
cramersVBiasCorrectedCalcule le V de Cramer, mais utilise une correction du biais.
deltaSumAdditionne la différence arithmétique entre des lignes consécutives.
deltaSumTimestampAdditionne la différence entre des lignes consécutives. Si la différence est négative, elle est ignorée.
distinctDynamicTypesCalcule la liste des types de données distincts stockés dans une colonne Dynamic.
distinctJSONPathsCalcule une liste de chemins distincts stockés dans une colonne JSON.
distinctJSONPathsAndTypesCalcule la liste des chemins distincts et de leurs types stockés dans JSON.
entropyCalcule l’entropie de Shannon d’une colonne de valeurs.
estimateCompressionRatioEstime le taux de compression d’une colonne donnée sans la compresser.
exponentialMovingAverageCalcule la moyenne mobile exponentielle des valeurs pour l’instant donné.
exponentialTimeDecayedAvgRenvoie la moyenne mobile pondérée à lissage exponentiel des valeurs d’une série temporelle au point t dans le temps.
exponentialTimeDecayedCountRenvoie la décroissance exponentielle cumulative sur une série temporelle à l’indice t dans le temps.
exponentialTimeDecayedMaxRenvoie le maximum entre la moyenne mobile à lissage exponentiel calculé à l’indice t dans le temps et celle à t-1.
exponentialTimeDecayedSumRenvoie la somme des valeurs de moyenne mobile à lissage exponentiel d’une série temporelle à l’indice t dans le temps.
first_valueIl s’agit d’un alias de any, introduit pour assurer la compatibilité avec les fonctions de fenêtre, lorsqu’il est parfois nécessaire de traiter les valeurs NULL (par défaut, toutes les fonctions d’agrégation de ClickHouse ignorent les valeurs NULL).
flameGraphFonction d’agrégation qui construit un flamegraph à partir d’une liste de stacktraces.
groupArrayCrée un tableau de valeurs d’argument. Les valeurs peuvent être ajoutées au tableau dans n’importe quel ordre (indéterminé).
groupArrayArrayAgrège des tableaux dans un tableau plus grand contenant ces tableaux.
groupArrayInsertAtInsère une valeur dans le tableau à la position spécifiée.
groupArrayIntersectRenvoie l’intersection des tableaux donnés (c’est-à-dire tous les éléments présents dans tous les tableaux donnés).
groupArrayLastCrée un tableau des dernières valeurs d’argument.
groupArrayMovingAvgCalcule la moyenne mobile des valeur d’entrée.
groupArrayMovingSumCalcule la somme mobile des valeur d’entrée.
groupArraySampleCrée un tableau de valeurs d’argument échantillonnées. La taille du tableau résultant est limitée à max_size éléments. Les valeurs d’argument sont sélectionnées et ajoutées au tableau de manière aléatoire.
groupArraySortedRenvoie un tableau contenant les N premiers éléments par ordre croissant.
groupBitAndApplique l’opération bit à bit AND à une série de nombres.
groupBitmapEffectue des calculs de bitmap ou d’agrégation à partir d’une colonne d’entiers non signés, renvoie une cardinalité de type UInt64 et, si le suffixe -State est ajouté, renvoie alors un objet bitmap.
groupBitmapAndCalcule le AND d’une colonne bitmap, renvoie une cardinalité de type UInt64 et, si le suffixe -State est ajouté, renvoie alors un objet bitmap.
groupBitmapOrCalcule le OR d’une colonne bitmap, renvoie une cardinalité de type UInt64 et, si le suffixe -State est ajouté, renvoie alors un objet bitmap. Cela équivaut à groupBitmapMerge.
groupBitmapXorCalcule le XOR d’une colonne bitmap et renvoie la cardinalité de type UInt64 ; si le suffixe -State est utilisé, renvoie alors un objet bitmap.
groupBitOrApplique l’opération bit à bit OR à une série de nombres.
groupBitXorApplique l’opération bit à bit XOR à une série de nombres.
groupConcatCalcule une chaîne concaténée à partir d’un groupe de chaînes, éventuellement séparées par un délimiteur et éventuellement limitée à un nombre maximal d’éléments.
groupUniqArrayCrée un tableau à partir de différentes valeurs d’argument.
intervalLengthSumCalcule la longueur totale de l’union de toutes les plages (segments sur l’axe numérique).
kolmogorovSmirnovTestApplique le test de Kolmogorov-Smirnov à des échantillons issus de deux populations.
kurtPopCalcule la kurtosis d’une séquence.
kurtSampCalcule la kurtosis d’échantillon d’une séquence.
largestTriangleThreeBucketsApplique l’algorithme Largest-Triangle-Three-Buckets aux données d’entrée.
last_valueSélectionne la dernière valeur rencontrée, comme anyLast, mais peut accepter NULL.
mannWhitneyUTestApplique le test des rangs de Mann-Whitney à des échantillons issus de deux populations.
maxFonction d’agrégation qui calcule le maximum dans un groupe de valeurs.
maxIntersectionsFonction d’agrégation qui calcule le nombre maximal d’intersections au sein d’un groupe d’intervalles (si tous les intervalles s’intersectent au moins une fois).
maxIntersectionsPositionFonction d’agrégation qui calcule les positions des occurrences de la fonction maxIntersections.
maxMapCalcule le maximum à partir du tableau value selon les clés spécifiées dans le tableau key.
meanZTestApplique le test z sur la moyenne à des échantillons issus de deux populations.
medianLes fonctions median* sont des alias des fonctions quantile* correspondantes. Elles calculent la médiane d’un échantillon de données numériques.
minFonction d’agrégation qui calcule le minimum dans un groupe de valeurs.
minMapCalcule le minimum à partir du tableau value selon les clés spécifiées dans le tableau key.
quantileCalcule un quantile approximatif d’une séquence de données numériques.
quantileBFloat16Calcule un quantile approximatif d’un échantillon composé de nombres bfloat16.
quantileDDCalcule un quantile approximatif d’un échantillon avec des garanties d’erreur relative.
quantileDeterministicCalcule un quantile approximatif d’une séquence de données numériques.
quantileExact FunctionsFonctions quantileExact, quantileExactLow, quantileExactHigh, quantileExactExclusive, quantileExactInclusive
quantileExactExclusiveCalcule exactement le quantile d’une séquence de données numériques.
quantileExactHighComme quantileExact, calcule le quantile exact d’une séquence de données numériques.
quantileExactInclusiveCalcule exactement le quantile d’une séquence de données numériques.
quantileExactLowComme quantileExact, calcule le quantile exact d’une séquence de données numériques.
quantileExactWeightedCalcule exactement le quantile d’une séquence de données numériques, en tenant compte du poids de chaque élément.
quantileExactWeightedInterpolatedCalcule le quantile d’une séquence de données numériques par interpolation linéaire, en tenant compte du poids de chaque élément.
quantileGKCalcule le quantile d’une séquence de données numériques à l’aide de l’algorithme de Greenwald-Khanna.
quantileInterpolatedWeightedCalcule le quantile d’une séquence de données numériques par interpolation linéaire, en tenant compte du poids de chaque élément.
quantilePrometheusHistogramCalcule le quantile d’un histogramme par interpolation linéaire.
quantiles Functionsquantiles, quantilesExactExclusive, quantilesExactInclusive, quantilesGK
quantilesExactExclusiveCalcule exactement les quantiles d’une séquence de données numériques.
quantilesExactInclusiveCalcule exactement les quantiles d’une séquence de données numériques.
quantilesGKquantilesGK fonctionne de manière similaire à quantileGK, mais permet de calculer simultanément des quantiles à différents niveaux et renvoie un tableau.
quantilesTimingWeightedAvec une précision déterminée, calcule le quantile d’une séquence de données numériques en fonction du poids de chaque élément de la séquence.
quantileTDigestCalcule un quantile approximatif d’une séquence de données numériques à l’aide de l’algorithme t-digest.
quantileTDigestWeightedCalcule un quantile approximatif d’une séquence de données numériques à l’aide de l’algorithme t-digest.
quantileTimingAvec une précision déterminée, calcule le quantile d’une séquence de données numériques.
quantileTimingWeightedAvec une précision déterminée, calcule le quantile d’une séquence de données numériques en fonction du poids de chaque élément de la séquence.
rankCorrCalcule un coefficient de corrélation de rang.
simpleLinearRegressionEffectue une régression linéaire simple (unidimensionnelle).
singleValueOrNullLa fonction d’agrégation singleValueOrNull est utilisée pour implémenter des opérateurs de sous-requête, tels que x = ALL (SELECT ...). Elle vérifie s’il n’existe qu’une seule unique valeur non-NULL dans les données.
skewPopCalcule l’asymétrie d’une séquence.
skewSampCalcule l’asymétrie d’échantillon d’une séquence.
sparkbarLa fonction trace un histogramme de fréquences pour les valeurs x et leur fréquence y sur l’intervalle [min_x, max_x].
stddevPopLe résultat est égal à la racine carrée de varPop.
stddevPopStableLe résultat est égal à la racine carrée de varPop. Contrairement à stddevPop, cette fonction utilise un algorithme numériquement stable.
stddevSampLe résultat est égal à la racine carrée de varSamp
stddevSampStableLe résultat est égal à la racine carrée de varSamp. Contrairement à stddevSamp, cette fonction utilise un algorithme numériquement stable.
stochasticLinearRegressionCette fonction implémente une régression linéaire stochastique. Elle prend en charge des paramètres personnalisés pour le taux d’apprentissage, le coefficient de régularisation L2, la taille des mini-lots, et propose plusieurs méthodes de mise à jour des poids (Adam, simple SGD, Momentum, Nesterov.)
stochasticLogisticRegressionCette fonction implémente une régression logistique stochastique. Elle peut être utilisée pour un problème de classification binaire, prend en charge les mêmes paramètres personnalisés que stochasticLinearRegression et fonctionne de la même manière.
studentTTestApplique le test t de Student à des échantillons issus de deux populations.
studentTTestOneSampleApplique le test t de Student à un échantillon et à une moyenne de population connue.
sumCalcule la somme. Fonctionne uniquement pour les nombres.
sumCountCalcule la somme des nombres et compte en même temps le nombre de lignes. La fonction est utilisée par l’optimiseur de requêtes ClickHouse : s’il y a plusieurs fonctions sum, count ou avg dans une requête, elles peuvent être remplacées par une seule fonction sumCount afin de réutiliser les calculs. Il est rarement nécessaire d’utiliser explicitement cette fonction.
sumKahanCalcule la somme des nombres à l’aide de l’algorithme de sommation compensée de Kahan
sumMapTotalise un ou plusieurs tableaux value selon les clés spécifiées dans le tableau key. Renvoie un tuple de tableaux : les clés dans l’ordre trié, suivies des valeurs additionnées pour les clés correspondantes sans dépassement de capacité.
sumMapWithOverflowTotalise un tableau value selon les clés spécifiées dans le tableau key. Renvoie un tuple de deux tableaux : les clés dans l’ordre trié, et les valeurs additionnées pour les clés correspondantes. Diffère de la fonction sumMap en ce qu’elle effectue une sommation avec dépassement de capacité.
sumWithOverflowCalcule la somme des nombres en utilisant, pour le résultat, le même type de données que pour les paramètres d’entrée. Si la somme dépasse la valeur maximale de ce type de données, elle est calculée avec dépassement de capacité.
theilsULa fonction theilsU calcule le coefficient d’incertitude U de Theil, une valeur qui mesure l’association entre deux colonnes d’une table.
timeSeriesChangesToGridFonction d’agrégation qui calcule des changements de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesDeltaToGridFonction d’agrégation qui calcule un delta de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesDerivToGridFonction d’agrégation qui calcule une dérivée de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesGroupArrayTrie les séries temporelles par horodatage par ordre croissant.
timeSeriesInstantDeltaToGridFonction d’agrégation qui calcule un idelta de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesInstantRateToGridFonction d’agrégation qui calcule un irate de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesLastTwoSamplesFonction d’agrégation permettant de rééchantillonner des données de séries temporelles pour calculer irate et idelta de type PromQL
timeSeriesPredictLinearToGridFonction d’agrégation qui calcule une prédiction linéaire de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesRateToGridFonction d’agrégation qui calcule un rate de type PromQL sur des données de séries temporelles selon la grille spécifiée.
timeSeriesResampleToGridWithStalenessFonction d’agrégation qui rééchantillonne des données de séries temporelles selon la grille spécifiée.
timeSeriesResetsToGridFonction d’agrégation qui calcule des resets de type PromQL sur des données de séries temporelles selon la grille spécifiée.
topKRenvoie un tableau des valeurs approximativement les plus fréquentes dans la colonne spécifiée. Le tableau résultant est trié par ordre décroissant de la fréquence approximative des valeurs (et non des valeurs elles-mêmes).
topKWeightedRenvoie un tableau des valeurs approximativement les plus fréquentes dans la colonne spécifiée. Le tableau résultant est trié par ordre décroissant de la fréquence approximative des valeurs (et non des valeurs elles-mêmes). De plus, le poids de la valeur est pris en compte.
uniqCalcule le nombre approximatif de valeurs distinctes de l’argument.
uniqCombinedCalcule le nombre approximatif de valeurs d’argument distinctes.
uniqCombined64Calcule le nombre approximatif de valeurs d’argument distinctes. C’est identique à uniqCombined, mais utilise un hash 64 bits pour tous les types de données, et pas seulement pour le type de données String.
uniqExactCalcule le nombre exact de valeurs d’argument distinctes.
uniqHLL12Calcule le nombre approximatif de valeurs d’argument distinctes à l’aide de l’algorithme HyperLogLog.
uniqThetaCalcule le nombre approximatif de valeurs d’argument distinctes à l’aide du Theta Sketch Framework.
varPopCalcule la variance de la population.
varPopStableRenvoie la variance de la population. Contrairement à varPop, cette fonction utilise un algorithme numériquement stable. Elle est plus lente, mais produit une erreur de calcul plus faible.
varSampCalcule la variance de l’échantillon d’un jeu de données.
varSampStableCalcule la variance de l’échantillon d’un jeu de données. Contrairement à varSamp, cette fonction utilise un algorithme numériquement stable. Elle est plus lente, mais produit une erreur de calcul plus faible.
welchTTestApplique le test t de Welch à des échantillons issus de deux populations.
Dernière modification le 25 juin 2026