© Éditions Eyrolles
111
chapitre n° 4
Interrogation des données
Étudions à présent ces fonctions dans le cadre de regroupements de lignes.
Étude du GROUP BY et HAVING
Le groupement de lignes dans une requête se programme au niveau surligné de l’instruction
SQL suivante :
SELECT col1[, col2…], fonction1Groupe(…)[,fonction2Groupe(…)…]
FROM nomTable [ WHERE condition ]
[ORDER BY {col1 | expr1 | position1} [ASC | DESC] [,{col1 ... }] ];
GROUP_
CONCAT
Nom des pilotes de la compagnie 'AF'.
SELECT compa,
FROM Pilote GROUP BY compa;
+-------+------------------------------------------+
| compa | GROUP_CONCAT(nom)
|
+-------+------------------------------------------+
| AF
| Gratien Viel,Didier Donsez,Daniel Vielle |
| CAST | Francoise Tort
|
| SING | Richard Grin,Placide Fresnais
|
+-------+------------------------------------------+
MAX –
MIN
Nombre d’heures de vol le plus élevé, date d’embauche la plus récente. Nombre d’heures
de vol le moins élevé, date d’embauche la plus ancienne.
SELECT
"Date+",
,
"Date-" FROM Pilote;
+-------------+------------+------------+------------+
| MAX(nbHVol) | Date+
| MIN(prime) | Date|
+-------------+------------+------------+------------+
|
2450.00 | 2001-09-21 |
0 | 1965-02-05 |
+-------------+------------+------------+------------+
STDEV –
SUM –
VARIANCE
Écart type des primes, somme des heures de vol, variance des primes des pilotes de la
compagnie 'AF'.
SELECT
,
,
FROM Pilote
WHERE compa = 'AF';
+---------------+-------------+-----------------+
| STDDEV(prime) | SUM(nbHVol) | VARIANCE(prime) |
+---------------+-------------+-----------------+
|
50.0000 |
850.00 |
2500.0000 |
+---------------+-------------+-----------------+
Tableau 4-26 Exemples de fonctions de groupe (suite)
Fonction
Exemples
GROUP_CONCAT(nom)
MAX(nbHVol), MAX(embauche)
MIN(prime)
MIN(embauche)
STDDEV(prime)
SUM(nbHVol)
VARIANCE(prime)
GROUP BY {col1 | expr1 | position1} [,{col2... }]
[ HAVING condition ]
Précédent

- 133/418

Suivant