Tutoriel MySQL

ACCUEIL MySQL Introduction à MySQL SGBDR MySQL

SQL MySQL

SQL MySQL MySQL SÉLECTIONNER MySQL OÙ MySQL ET, OU, PAS MySQL ORDRE PAR MySQL INSÉRER DANS Valeurs NULL MySQL MISE À JOUR MySQL SUPPRIMER MySQL LIMITE MySQL MySQL MIN et MAX MySQL COUNT, AVG, SOMME MySQL J'AIME Caractères génériques MySQL MySQL dans MySQL ENTRE Alias ​​MySQL MySQL rejoint JOINTURE INTERNE MySQL JOINTURE GAUCHE MySQL MySQL RIGHT JOIN JOINTURE CROISÉE MySQL Rejoindre MySQL UNION MySQL GROUPER PAR MySQL MySQL AYANT MySQL EXISTE MySQL TOUT, TOUS MySQL INSÉRER SÉLECTIONNER CAS MySQL Fonctions nulles MySQL Commentaires MySQL Opérateurs MySQL

Base de données MySQL

Créer une base de données MySQL Base de données de dépôt MySQL Créer une table MySQL Table de dépôt MySQL Table de modification MySQL Contraintes MySQL MySQL non nul MySQL unique Clé primaire MySQL Clé étrangère MySQL Vérification MySQL MySQL par défaut Créer un index MySQL Incrémentation automatique de MySQL Dates MySQL Vues MySQL

Références MySQL

Types de données MySQL Fonctions MySQL

Exemples MySQL

Exemples MySQL Questionnaire MySQL Exercices MySQL

Instruction GROUP BY MySQL


L'instruction MySQL GROUP BY

L' GROUP BYinstruction regroupe les lignes qui ont les mêmes valeurs dans des lignes récapitulatives, comme "trouver le nombre de clients dans chaque pays".

L' GROUP BYinstruction est souvent utilisée avec des fonctions d'agrégation ( COUNT(), MAX(), MIN(), SUM(), AVG()) pour regrouper le jeu de résultats par une ou plusieurs colonnes.

Syntaxe GROUP BY

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

Base de données de démonstration

Vous trouverez ci-dessous une sélection de la table "Clients" dans l'exemple de base de données Northwind :

CustomerID CustomerName ContactName Address City PostalCode Country
1

Alfreds Futterkiste Maria Anders Obere Str. 57 Berlin 12209 Germany
2 Ana Trujillo Emparedados y helados Ana Trujillo Avda. de la Constitución 2222 México D.F. 05021 Mexico
3 Antonio Moreno Taquería Antonio Moreno Mataderos 2312 México D.F. 05023 Mexico
4

Around the Horn Thomas Hardy 120 Hanover Sq. London WA1 1DP UK
5 Berglunds snabbköp Christina Berglund Berguvsvägen 8 Luleå S-958 22 Sweden


MySQL GROUP BY Exemples

L'instruction SQL suivante répertorie le nombre de clients dans chaque pays :

Exemple

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country;

L'instruction SQL suivante répertorie le nombre de clients dans chaque pays, triés de haut en bas :

Exemple

SELECT COUNT(CustomerID), Country
FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;

Base de données de démonstration

Vous trouverez ci-dessous une sélection du tableau "Orders" dans l'exemple de base de données Northwind :

OrderID CustomerID EmployeeID OrderDate ShipperID
10248 90 5 1996-07-04 3
10249 81 6 1996-07-05 1
10250 34 4 1996-07-08 2

Et une sélection du tableau "Expéditeurs" :

ShipperID ShipperName
1 Speedy Express
2 United Package
3 Federal Shipping

GROUP BY avec JOIN Exemple

L'instruction SQL suivante répertorie le nombre de commandes envoyées par chaque expéditeur :

Exemple

SELECT Shippers.ShipperName, COUNT(Orders.OrderID) AS NumberOfOrders FROM Orders
LEFT JOIN Shippers ON Orders.ShipperID = Shippers.ShipperID
GROUP BY ShipperName;

Testez-vous avec des exercices

Exercer:

Indiquez le nombre de clients dans chaque pays.

SELECT (CustomerID),
Country
FROM Customers
;