La clause MYSQL GROUP BY est utilisée pour collecter des données à partir de plusieurs enregistrements et regrouper le résultat par une ou plusieurs colonnes. Il est généralement utilisé dans une instruction SELECT.
Vous pouvez également utiliser certaines fonctions d'agrégation telles que COUNT, SUM, MIN, MAX, AVG, etc. sur la colonne groupée.
Syntaxe:
SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
Paramètres
expression1, expression2, ... expression_n : Il spécifie les expressions qui ne sont pas encapsulées dans une fonction d'agrégation et doivent être incluses dans la clause GROUP BY.
tableau java
fonction_agrégat : Il spécifie une fonction telle que les tables SUM, COUNT, MIN, MAX ou AVG, etc. : Il spécifie les tables à partir desquelles vous souhaitez récupérer les enregistrements. Il doit y avoir au moins une table répertoriée dans la clause FROM.
OÙ conditions : C'est facultatif. Il précise les conditions qui doivent être remplies pour que les enregistrements soient sélectionnés.
(i) Clause MySQL GROUP BY avec fonction COUNT
Considérons une table nommée « table des officiers », contenant les enregistrements suivants.
Maintenant, comptons le nombre répétitif de villes dans la colonne adresse.
Exécutez la requête suivante :
SELECT address, COUNT(*) FROM officers GROUP BY address;
Sortir:
(ii) Clause MySQL GROUP BY avec fonction SUM
Prenons un tableau « employés », contenant les données suivantes.
cycle de vie SDLC
Désormais, la requête suivante GROUPERA PAR l'exemple à l'aide de la fonction SUM et renverra le nom_emp et le nombre total d'heures de travail de chaque employé.
Exécutez la requête suivante :
SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name;
Sortir:
(iii) Clause MySQL GROUP BY avec fonction MIN
L'exemple suivant précise la durée minimale de travail des salariés du tableau 'employés'.
Exécutez la requête suivante :
SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Sortir:
(iv) Clause MySQL GROUP BY avec fonction MAX
L'exemple suivant précise la durée maximale de travail des salariés de la table 'employés'.
noyau microlithique
Exécutez la requête suivante :
SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Sortir:
(v) Clause MySQL GROUP BY avec fonction AVG
L'exemple suivant précise la durée moyenne de travail des salariés du tableau 'employés'.Exécutez la requête suivante :
SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name;
Sortir: