GROUP BY
is a SQL command used to merge similar set of data under one field. A user can merge this data according to the field of his/her own choice. A GROUP BY
returns one record for each group.
COUNT
is a command which counts the number of records present in a particular field.
In the illustration below there is a blue circle, some green circles, and a few purple circles; each circle has a particular hexagon attached to them. The GROUP BY
function is called to group the hexagons according to the circles they are attached with. Later, the COUNT
function is used to count the number of hexagons attached with a particular circle.
Suppose there is a table which stores the records of immigrants. It stores their names, IDs and nationality.
Table : Immigrants
ID | Name | Country |
---|---|---|
123 | Rooney | England |
457 | Nekham | Australia |
312 | George | USA |
761 | McKenzie | USA |
478 | McGrath | Australia |
567 | Mukesh | India |
978 | John | USA |
445 | Angelina | USA |
771 | Mark | Russia |
414 | Peter | England |
Now, if this table is grouped by nationality and their IDs are to be counted and displayed, the code will be :
SELECT COUNT(id), nationalityFROM immigrantsGROUP BY(nationality)
The above code correctly calculates the number of people belonging to each specific country.
Free Resources