Fonctions d'Agrégation
S'applique À : WatchGuard Advanced EPDR
Les fonctions d'agrégation permettent d'accumuler les données de différentes lignes.
Dans l'outil Requête SQL Avancée, vous pouvez utiliser les fonctions d'agrégation suivantes pour créer une requête SQL :
| Fonction | Description |
|---|---|
|
count() |
Compte le nombre de lignes d'une table. Elle accepte zéro argument et retourne UInt64. La syntaxe COUNT (DISTINCT x) n'est pas prise en charge. Utilisez la fonction uniq à cette fin. Les instructions SELECT count() FROM table ne sont pas optimisées, car le nombre d'entrées dans la table n'est pas stocké séparément. |
|
any(x) |
Sélectionne la première valeur rencontrée. Vous pouvez exécuter la requête dans n'importe quel ordre, et dans un ordre distinct à chaque fois. Pour obtenir un résultat déterminé, utilisez la fonction min ou max au lieu de any. Dans certains cas, l'ordre d'exécution est conservé. Cela s'applique aux cas où SELECT provient d'une sous-requête qui utilise ORDER BY. Lorsqu'une requête SELECT comporte la clause GROUP BY ou au moins une fonction d'agrégation, toutes les expressions des clauses SELECT, HAVING et ORDER BY doivent être calculées par les fonctions d'agrégation. Chaque colonne sélectionnée de la table doit être utilisée dans les clés ou dans des fonctions d'agrégation. |
|
anyHeavy(x) |
Sélectionne une valeur survenant fréquemment. S'il existe une valeur survenant dans plus de la moitié des cas dans chacun des fils d'exécution de la requête, cette valeur est retournée. En règle générale, le résultat est différent à chaque fois. |
|
anyLast(x) |
Retourne la dernière valeur. |
|
min(x) |
Retourne la valeur minimum. |
|
max(x) |
Retourne la valeur maximum. |
|
argMin(arg, val) |
Calcule la valeur arg d'une valeur val minimum. S'il existe plusieurs valeurs différentes d'arg pour des valeurs minimum de val, l'outil retourne la première valeur rencontrée. |
|
argMax(arg, val) |
Calcule la valeur arg d'une valeur val maximum. S'il existe plusieurs valeurs différentes d'arg pour des valeurs maximum de val, l'outil retourne la première valeur rencontrée. |
|
sum(x) |
Calcule la somme des nombres. |
|
sumWithOverflow(x) |
Calcule la somme des nombres en utilisant le même type de données pour le résultat que pour les paramètres d'entrée. Si la somme dépasse la valeur maximum de ce type de données, la fonction retourne une erreur. |
|
avg(x) |
Calcule la moyenne arithmétique des nombres. Le résultat est toujours un Float64. |
|
uniq(x) |
Calcule le nombre approximatif de valeurs différentes de l'argument. Fonctionne pour les nombres, les chaînes, les dates, les dateTimes, les arguments multiples et les arguments de type tuple. Fournit le résultat de manière déterministe (il ne dépend pas de l'ordre de traitement de la requête). |
|
uniqExact(x) |
Calcule le nombre exact de valeurs d'argument différentes. Nous vous recommandons d'utiliser la fonction uniq. Utilisez la fonction uniqExact si vous souhaitez obtenir un résultat exact. |
|
quantile(level)(x) |
Calcule le quantile x de l'ordre de niveau . niveau est un nombre à virgule flottante constant compris entre 0 et 1. Si vous omettez le paramètre level, 0.5 est choisi par défaut (calcul de la médiane). Cette fonction accepte les nombres, les dates et les dateTimes, et retourne :
La précision de cette fonction est relativement faible. Utilisez quantileExact(level)(x) pour une précision maximum. Le résultat n'est pas déterministe (il dépend de l'ordre de traitement de la requête). |
|
quantileExact(level)(x) |
Calcule exactement le quantile de l'ordre du niveau level. |
|
median(x) |
Calcule la médiane d'un échantillon de données numériques. |
|
varSamp(x) |
Représente une estimation sans biais de la variance d'une variable aléatoire. Les valeurs transmises en tant qu'arguments représentent un échantillon de la population totale. La fonction retourne un Float64. |
|
varPop(x) |
Calcule la variance de la population passée en argument. |
|
stddevSamp(x) |
Représente une estimation sans biais de l'écart-type d'une variable aléatoire. Les valeurs transmises en tant qu'arguments représentent un échantillon de la population totale. La fonction retourne un Float64. |
|
stddevPop(x) |
Calcule l'écart-type de la population passée en argument. |
|
covarSamp(x, y) |
Représente une estimation sans biais de la covariance de deux variables aléatoires. Les valeurs transmises en arguments représentent deux échantillons de la population totale. La fonction retourne un Float64. |
|
covarPop(x, y) |
Calcul de la covariance de deux variables aléatoires. Les valeurs transmises en arguments représentent deux populations. La fonction retourne un Float64. |
|
corr(x, y) |
Calcule le coefficient de corrélation de Pearson. |
Syntaxe SQL de Requête Avancée
Sélectionner la Syntaxe de Clause