group by sql
# Say you have a table called SALARIES that contains a
# few duplicate NAME entries...
+----+-------------+--------+
| ID | NAME | SALARY |
+----+-------------+--------+
| 1 | Bob | 500 |
| 2 | Alice | 500 |
| 3 | Alice | 200 |
| 4 | Frank | 700 |
| 5 | Percy | 100 |
| 6 | Percy | 800 |
| 7 | Cyrille | 400 |
+----+-------------+--------+
# We can obtain the total salaries of each person
# by using GROUP BY in the following query...
SELECT NAME, SALARY FROM SALARIES GROUP BY NAME;
# Which will output the following...
+------------+--------+
| Alice | 700 |
| Bob | 500 |
| Cyrille | 400 |
| Frank | 700 |
| Percy | 900 |
+------------+--------+
// Use SQL Group By clause after the Where clause
// Any column in the select list must either be in the Group By clause
// or part of an agregation statement
// Multiple columns can be included in the Group By Clause seperated by a comma
// Multiple columns stipulate the order tree. Order by
// first column, then second ... etc
Select LastName, FirstName, Sum(LeaveDays), Max(age)
From EmployeeProjects
Where StartDate > '2020-01-01'
Group By LastName, FirstName