Microsoft SQL Server
Fonctions d'agrégat
Recherche…
Introduction
Les fonctions d'agrégation dans SQL Server exécutent des calculs sur des ensembles de valeurs, renvoyant une valeur unique.
Syntaxe
- AVG ( expression [ALL | DISTINCT])
- COUNT ([ALL | DISTINCT] expression )
- MAX ( expression [ALL | DISTINCT])
- MIN ( expression [ALL | DISTINCT])
- SUM ([ALL | DISTINCT] expression )
SOMME()
Renvoie la somme des valeurs numériques dans une colonne donnée.
Nous avons une table comme indiqué dans la figure qui sera utilisée pour effectuer différentes fonctions d'agrégat. Le nom de la table est Marksheet .
Select SUM(MarksObtained) From Marksheet
La fonction sum
ne considère pas les lignes avec une valeur NULL dans le champ utilisé comme paramètre
Dans l'exemple ci-dessus, si nous avons une autre ligne comme celle-ci:
106 Italian NULL
Cette ligne ne sera pas prise en compte dans le calcul de la somme
AVG ()
Renvoie la moyenne des valeurs numériques dans une colonne donnée.
Nous avons une table comme indiqué dans la figure qui sera utilisée pour effectuer différentes fonctions d'agrégat. Le nom de la table est Marksheet .
Select AVG(MarksObtained) From Marksheet
La fonction average
ne prend pas en compte les lignes avec une valeur NULL dans le champ utilisé comme paramètre
Dans l'exemple ci-dessus, si nous avons une autre ligne comme celle-ci:
106 Italian NULL
Cette ligne ne sera pas prise en compte dans le calcul moyen
MAX ()
Renvoie la plus grande valeur dans une colonne donnée.
Nous avons une table comme indiqué dans la figure qui sera utilisée pour effectuer différentes fonctions d'agrégat. Le nom de la table est Marksheet .
Select MAX(MarksObtained) From Marksheet
MIN ()
Renvoie la plus petite valeur dans une colonne donnée.
Nous avons une table comme indiqué dans la figure qui sera utilisée pour effectuer différentes fonctions d'agrégat. Le nom de la table est Marksheet .
Select MIN(MarksObtained) From Marksheet
COMPTER()
Renvoie le nombre total de valeurs dans une colonne donnée.
Nous avons une table comme indiqué dans la figure qui sera utilisée pour effectuer différentes fonctions d'agrégat. Le nom de la table est Marksheet .
Select COUNT(MarksObtained) From Marksheet
La fonction count
ne prend pas en compte les lignes avec une valeur NULL dans le champ utilisé comme paramètre. Généralement, le paramètre count est * (tous les champs), donc seulement si tous les champs de la ligne sont NULL, cette ligne ne sera pas prise en compte.
Dans l'exemple ci-dessus, si nous avons une autre ligne comme celle-ci:
106 Italian NULL
Cette ligne ne sera pas prise en compte dans le calcul du compte
REMARQUE
La fonction COUNT(*)
renvoie le nombre de lignes d'une table. Cette valeur peut également être obtenue en utilisant une expression constante non nulle qui ne contient aucune référence de colonne, telle que COUNT(1)
.
Exemple
Select COUNT(1) From Marksheet
COUNT (Nom_Colonne) avec GROUP BY Nom_Colonne
La plupart du temps, nous aimons obtenir le nombre total d'occurrences d'une valeur de colonne dans une table, par exemple:
NOM DE LA TABLE: RAPPORTS
ReportName | RapportPrix |
---|---|
Tester | 10.00 $ |
Tester | 10.00 $ |
Tester | 10.00 $ |
Test 2 | 11.00 $ |
Tester | 10.00 $ |
Test 3 | 14.00 $ |
Test 3 | 14.00 $ |
Test 4 | 100.00 $ |
SELECT
ReportName AS REPORT NAME,
COUNT(ReportName) AS COUNT
FROM
REPORTS
GROUP BY
ReportName
NOM DU RAPPORT | COMPTER |
---|---|
Tester | 4 |
Test 2 | 1 |
Test 3 | 2 |
Test 4 | 1 |