Maison >base de données >tutoriel mysql >Comment GROUP BY x, y regroupe-t-il granulairement les données dans SQL ?

Comment GROUP BY x, y regroupe-t-il granulairement les données dans SQL ?

DDD
DDDoriginal
2025-01-22 05:32:09557parcourir

How Does GROUP BY x, y Granularly Group Data in SQL?

Compréhension approfondie de l'instruction GROUP BY x, y en SQL

L'instruction GROUP BY x en SQL est utilisée pour regrouper les enregistrements en fonction de la valeur commune d'une colonne x spécifiée. En élargissant ce concept, GROUP BY x, y représente un regroupement plus fin, dans lequel les enregistrements sont regroupés non seulement en fonction de la valeur de la colonne x, mais également en fonction de la valeur de la colonne y.

Comment ça marche

Ce regroupement sépare efficacement les données en différents ensembles. Chaque ensemble contient des enregistrements qui ont la même valeur pour x et y. Par exemple :

  • GROUP BY SubjectDonnées de catégories basées sur des valeurs uniques dans la colonne Subject.
  • GROUP BY Subject, Semester divise davantage ces groupes en fonction de combinaisons uniques de valeurs dans les colonnes Subject et Semester.

Exemple

Considérez le Subject_Selection tableau suivant :

<code>+---------+----------+----------+
| Subject | Semester | Attendee |
+---------+----------+----------+
| ITB001  |        1 | John     |
| ITB001  |        1 | Bob      |
| ITB001  |        1 | Mickey   |
| ITB001  |        2 | Jenny    |
| ITB001  |        2 | James    |
| MKB114  |        1 | John     |
| MKB114  |        1 | Erica    |
+---------+----------+----------+</code>

Appliquer GROUP BY Subject aux sujets de groupe et calculer la fréquentation :

<code class="language-sql">select Subject, Count(*)
from Subject_Selection
group by Subject</code>

Sortie :

<code>+---------+-------+
| Subject | Count |
+---------+-------+
| ITB001  |     5 |
| MKB114  |     2 |
+---------+-------+</code>

s'étend à GROUP BY Subject, Semester :

<code class="language-sql">select Subject, Semester, Count(*)
from Subject_Selection
group by Subject, Semester</code>

Sortie :

<code>+---------+----------+-------+
| Subject | Semester | Count |
+---------+----------+-------+
| ITB001  |        1 |     3 |
| ITB001  |        2 |     2 |
| MKB114  |        1 |     2 |
+---------+----------+-------+</code>

Ce résultat montre que trois étudiants ont suivi ITB001 au premier semestre, deux étudiants ont suivi ITB001 au deuxième semestre et deux étudiants ont suivi MKB114 au premier semestre.

En regroupant plusieurs colonnes, vous pouvez extraire des informations plus spécifiques et analyser vos données plus en détail.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn