Je kunt hier het Count commando zien voordat je GROUP BY commando gebruikt. GROUP BYcommando zal groepen maken in de veldnaam die is opgegeven en zal het aantal records in de groepen tellen. Dit is een zeer nuttig commando.
We kunnen ook WHERE commando gebruiken samen met GROUP BY commando in Mysql tabellen.
SELECT count(*) as total_records, class FROM `student` group by class
Dit zal het totaal aantal records in elke klasse weergeven. Zoals dit
total_records | class |
1 | Eight |
3 | Vijf |
9 | Vier |
2 | Negen |
10 | Zeven |
7 | Zes |
3 | Drie |
Laten we proberen om het totaal aantal meisjes records in elke klasse te krijgen door gebruik te maken van GROUP BY query. Hier willen we onze query filteren op alleen meisjes, dus moeten we een WHERE-clausule gebruiken om de records te beperken met behulp van het geslachtsveld. Hier is de query.
SELECT class,count( * ) AS total_records FROM `student` WHERE sex='female' GROUP BY class
De uitvoer is hier
klasse | totaal_records |
vier | 5 |
negen | 1 |
zeven | 5 |
Zes | 5 |
Drie | 1 |
Duplicate records
We kunnen dubbele records in een tabel achterhalen door group by commando te gebruiken. We zullen een andere tabel student2_1 maken door dezelfde gegevens te gebruiken en door enkele dubbele records toe te voegen. Hier is de query
SELECT name, COUNT(id) AS no from student2_1 group by name having no > 1
Output is here .
name | no |
---|---|
Arnold | 2 |
Tade Row | 3 |
U kunt de SQL dump van deze stduent2_1 tabel met toegevoegde dubbele gegevens aan het eind van deze pagina downloaden.
Hoe dubbele records te verwijderen
Door group by te gebruiken op een datumveld kunnen we een lijst genereren op kalenderjaar, boekjaar, maand
Sample code
Hier is een sample code om te begrijpen hoe je group by query kunt gebruiken met PHP script en PDO.
DEEL II: We zullen proberen om group by commando meer dan een velden toe te passen. Hiervoor zullen we een nieuwe tabel maken en in detail bespreken. Volgende deel II
Download de SQL DUMP van deze leerlingentabel
Download de SQL DUMP van de tabel stduent2_1