Maison  >  Article  >  base de données  >  groupe mysql plusieurs colonnes

groupe mysql plusieurs colonnes

(*-*)浩
(*-*)浩original
2019-05-17 18:53:332964parcourir

Dans les tâches de développement quotidiennes, nous utilisons souvent le regroupement GROUP BY de MYSQL pour obtenir des données statistiques basées sur les champs de groupe de la table de données.

groupe mysql plusieurs colonnes

Par exemple, il existe un tableau de sélection des cours des étudiants avec la structure suivante :

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

Nous voulons compter combien d'étudiants se sont inscrits à chaque cours , et utilisez le SQL suivant

SELECT Subject, Count(*)
FROM Subject_Selection
GROUP BY Subject

Les résultats suivants ont été obtenus :

Subject    Count
------------------------------
ITB001     5
MKB114     2

Parce que la table enregistre que 5 étudiants ont choisi ITB001 et 2 étudiants ont choisi MKB114.

La raison de ce résultat est la suivante :
GROUP BY X signifie mettre tous les enregistrements avec la même valeur de champ X dans un groupe.
Et GROUPE PAR X, Y ?
GROUP BY X, Y signifie placer tous les enregistrements avec la même valeur de champ X et la même valeur de champ Y dans un groupe.

Nous demanderons ensuite de compter combien de personnes choisissent chaque matière à chaque semestre, et utiliserons le SQL suivant :

SELECT Subject, Semester, Count(*)
FROM Subject_Selection
GROUP BY Subject, Semester

Le SQL ci-dessus signifie regrouper les données dans la table Subject_Selection Put records. avec les mêmes valeurs de champ Sujet et Semestre dans le même groupe, puis appliquez des fonctions d'agrégation (COUNT, SUM, AVG, etc.) aux données de chaque groupe.

Le résultat obtenu est :

Subject    Semester   Count
------------------------------
ITB001     1          3
ITB001     2          2
MKB114     1          2

D'après les enregistrements du tableau, nous pouvons voir que ce résultat de regroupement est correct 3 étudiants ont choisi ITB001 au premier semestre, et 2 étudiants ont choisi ITB001 en. le premier semestre. J'ai choisi ITB001 au deuxième semestre,
deux étudiants ont choisi MKB114 au premier semestre, et personne n'a choisi MKB114 au deuxième semestre.

Résumé :

Lorsque vous utilisez GROUP BY pour regrouper des données dans une table dans MYSQL,
GROUP BY X signifie mettre tous les enregistrements avec la même valeur de champ X dans un seul groupe Ici,
GROUP BY X, Y signifie mettre tous les enregistrements avec la même valeur de champ X et la même valeur de champ Y dans un groupe

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