Clause GROUP BY
de SQL : gestion de plusieurs colonnes
La clause SQL GROUP BY
regroupe les lignes d'un tableau en fonction des colonnes spécifiées. Explorons comment cela fonctionne avec des colonnes simples et multiples.
Regroupement sur une seule colonne (GROUP BY x
)
GROUP BY x
regroupe les lignes partageant la même valeur dans la colonne 'x'. Toutes les lignes avec des valeurs « x » identiques sont traitées comme un seul groupe.
Regroupement multi-colonnes (GROUP BY x, y
)
En étendant cela, GROUP BY x, y
regroupe les lignes en fonction des valeurs correspondantes dans les les deux colonnes « x » et « y ». Les lignes doivent avoir des valeurs identiques pour que 'x' et 'y' soient dans le même groupe.
Exemple : inscription par sujet
Considérez le Subject_Selection
tableau de suivi des inscriptions aux matières des étudiants :
<code>Table: Subject_Selection +---------+----------+---------+ | 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>
Regroupement par sujet uniquement
La requête SELECT Subject, COUNT(*) FROM Subject_Selection GROUP BY Subject
regroupe par Subject
:
<code>+---------+--------+ | Subject | Count | +---------+--------+ | ITB001 | 5 | | MKB114 | 2 | +---------+--------+</code>
Cela montre le nombre total d'inscriptions pour chaque matière.
Regroupement par matière et semestre
La requête SELECT Subject, Semester, COUNT(*) FROM Subject_Selection GROUP BY Subject, Semester
regroupe par Subject
et Semester
:
<code>+---------+----------+--------+ | Subject | Semester | Count | +---------+----------+--------+ | ITB001 | 1 | 3 | | ITB001 | 2 | 2 | | MKB114 | 1 | 2 | +---------+----------+--------+</code>
Cela fournit le nombre d'inscriptions pour chaque matière par semestre, offrant une vue plus granulaire. La principale différence réside dans le niveau de détail supplémentaire fourni en incluant Semester
dans la clause GROUP BY
.
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!