Fonction SQL Server AVG

Fonction SQL Server AVG

Objectif: Ce tutoriel vise à vous aider à comprendre comment calculer la moyenne d'un ensemble donné de valeurs dans SQL Server en utilisant la fonction AVG ().

Fonction SQL Server AVG

La fonction avg () est une fonction agrégée qui vous permet de déterminer la moyenne d'un ensemble donné de valeurs. La fonction ignorera les valeurs nulles dans l'entrée.

Ce qui suit montre la syntaxe de la fonction avg ():

AVG ([toutes | distinctes] expression)
[Sur ([partition_by_clause] ORDER_BY_CLAUSE)]

Arguments de fonction

La fonction prend en charge les arguments suivants:

  1. TOUS - Le mot-clé tout applique la fonction avg () à toutes les valeurs de l'ensemble fourni. C'est l'option par défaut pour la fonction.
  2. DISTINCT - Ce mot clé vous permet d'appliquer la fonction uniquement aux valeurs distinctes de l'ensemble donné. Cette option ignorera toutes les valeurs en double, peu importe le nombre de fois que la valeur se produit dans l'ensemble.
  3. expression - Cela définit un ensemble de valeurs ou une expression qui renvoie une valeur numérique.
  4. Sur partition_by | ORDER_BY_CLAUSE - Cela spécifie la condition utilisée pour diviser l'expression en différentes partitions où la fonction est appliquée. L'Ordre_By_Clause définit l'ordre pour les valeurs dans les partitions résultantes.

La valeur de retour de fonction dépendra du type de données d'entrée. Le tableau suivant montre le type de sortie correspondant pour un type d'entrée donné.

Type d'entrée Type résultant
minuscule int
int int
petit int
grand grand
flotter et réel flotter
Argent / Smallmoney argent
décimal décimal

Exemple d'utilisation

Voyons un exemple d'utilisation de la fonction avg ().

Exemple 1 - Utilisation de l'Avg () avec distinct

L'exemple suivant crée un tableau d'échantillons et insère quelques valeurs aléatoires.

Drop Database Si existe Sample_DB;
Créer une base de données Sample_DB;
Utilisez Sample_DB;
Créer une table TBL (
Int aléatoire,
));
insérer dans TBL (aléatoire)
valeurs (101), (69), (62), (99), (45), (80), (66), (61), (46), (28), (66);

Dans la requête suivante, nous utilisons la fonction AVG () pour déterminer la moyenne des valeurs distinctes dans la colonne comme indiqué:

sélectionnez AVG (aléatoire distinct) en moyenne de TBL;

Dans ce cas, la fonction calcule la moyenne des valeurs uniques dans la colonne. La valeur résultante est comme indiqué:

Exemple 2 - Utilisation de la fonction avg () avec tous

Pour permettre à la fonction d'inclure des valeurs en double, nous pouvons utiliser le mot clé tout comme indiqué:

Sélectionnez AVG (tous aléatoires) en moyenne de TBL;

Dans ce cas, la fonction considère toutes les onze valeurs au lieu de 10 comme appliqué précédemment.

NOTE: Selon le type résultant, la valeur peut être arrondie, ce qui rend l'utilisation de tous et distincts.

Par exemple:

101 + 69 + 62 + 99 + 45 + 80 + 66 + 61 + 46 + 28 + 66/11 = 65.7272727273
101 + 69 + 62 + 99 + 45 + 80 + 66 + 61 + 46 + 28/10 = 65.7

Comme vous pouvez le voir sur la sortie ci-dessus, la différence est principalement affichée lorsque le type résultant est une valeur de point flottante.

Utilisation de la fonction AVG avec le groupe par clause

Considérez le tableau fourni ci-dessous:

Nous pouvons calculer le prix moyen de chaque produit par un fabricant donné en utilisant la fonction Group By Clause et AVG () comme illustré ci-dessous:

Sélectionnez le fabricant, AVG (prix) comme «prix moyen», somme (quantité) comme «en stock»
des produits
groupe par fabricant;

La requête ci-dessus devrait organiser les lignes en différentes partitions en fonction du fabricant. Nous calculons ensuite le prix moyen de tous les produits de chaque partition.

Le tableau résultant est comme indiqué:

Conclusion

Dans cet article, nous avons couvert les principes fondamentaux du travail avec la fonction AVG dans SQL Server pour déterminer la moyenne d'un ensemble donné de valeurs.

Merci d'avoir lu!!