Du kan se kommandot Count innan du använder GROUP BY kommandot här. GROUP BY-kommandot skapar grupper i det angivna fältnamnet och räknar antalet poster i grupperna. Detta är ett mycket användbart kommando.
Vi kan också använda kommandot WHERE tillsammans med kommandot GROUP BY i Mysql-tabeller.
SELECT count(*) as total_records, class FROM `student` group by class
Detta visar det totala antalet poster i varje klass. Så här
total_records | class | |
1 | Eight | |
3 | Fem | |
9 | Fyra | |
2 | Nio | Nine |
10 | Sju | |
7 | Sex | |
3 | Tre |
Låt oss försöka få fram det totala antalet flickposter i varje klass med hjälp av GROUP BY-förfrågan. Här vill vi filtrera vår fråga för endast flickor, så vi måste använda en WHERE-klausul för att begränsa posterna med hjälp av könsfältet. Här är frågan.
SELECT class,count( * ) AS total_records FROM `student` WHERE sex='female' GROUP BY class
Resultatet är här
class | total_records |
Four | 5 |
Nine | 1 |
Seven | 5 |
Sex | 5 |
Tre | 1 |
Dubbletterade poster
Vi kan hitta dubbletter i en tabell genom att använda kommandot group by. Vi kommer att skapa en annan tabell student2_1 genom att använda samma data och lägga till några dubbla poster. Här är frågan
SELECT name, COUNT(id) AS no from student2_1 group by name having no > 1
Output är här .
namn | no |
---|---|
Arnold | 2 |
Tade Row | 3 |
Du kan ladda ner SQL-dumpningen av den här stduent2_1-tabellen med tillagda dubblettdata i slutet av denna sida.
Hur man tar bort dubbla poster
Genom att använda group by på ett datumfält kan vi generera en lista på kalenderår, räkenskapsår, månadsmässigt
Sampelkod
Här är en exempelkod för att förstå hur man använder group by query med hjälp av PHP-skript och PDO.
DEL II: Vi kommer att försöka tillämpa group by command på fler än ett fält. För detta kommer vi att skapa en ny tabell och diskutera i detalj. Nästa del II
Down load the SQL DUMP of this student table
Down load the SQL DUMP of stduent2_1 table