Functions: SUM, AVG, MAX, MIN, COUNT.
NAME |
SALARY |
nisim |
100 |
shlomo |
300 |
david |
200 |
sason |
100 |
SUM#
SELECT SUM(SALARY) FROM singers;
AVG#
SELECT AVG(SALARY) FROM singers;
MAX 馃#
SELECT MAX(SALARY) FROM singers;
MIN#
SELECT MIN(SALARY) FROM singers;
COUNT#
SELECT COUNT(*) FROM singers;
GROUP BY#
NAME |
SALARY |
TEAM_ID |
nisim |
100 |
A |
shlomo |
300 |
A |
david |
200 |
A |
sason |
100 |
A |
gilgamesh |
100 |
A |
shrek |
150 |
B |
fiona |
325 |
B |
donkey |
50 |
B |
farkwad |
9000 |
B |
SUM#
SELECT TEAM_ID, SUM(SALARY)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
SUM(SALARY) |
A |
800 |
B |
9525 |
AVG#
SELECT TEAM_ID, AVG(SALARY)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
AVG(SALARY) |
A |
160 |
B |
2381.25 |
MAX#
SELECT TEAM_ID, MAX(SALARY)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
MAX(SALARY) |
A |
300 |
B |
9000 |
MIN#
SELECT TEAM_ID, MIN(SALARY)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
MIN(SALARY) |
A |
100 |
B |
50 |
COUNT#
SELECT TEAM_ID, COUNT(*)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
COUNT(SALARY) |
A |
5 |
B |
4 |
HAVING Clause#
filtering rows after aggragation.
SELECT TEAM_ID, SUM(SALARY)
FROM actors
GROUP BY TEAM_ID;
TEAM_ID |
SUM(SALARY) |
A |
800 |
B |
9525 |
SELECT TEAM_ID, SUM(SALARY)
FROM actors
GROUP BY TEAM_ID
HAVING SUM(SALARY) > 1000;
TEAM_ID |
SUM(SALARY) |
B |
9525 |
Column Alias#
use column alias to make it easier
SELECT
TEAM_ID,
SUM(SALARY) AS SALARY_SUM
FROM actors
GROUP BY TEAM_ID
HAVING SALARY_SUM > 1000;
ORDER#
SELECT TEAM_ID, SUM(SALARY)
FROM actors
GROUP BY TEAM_ID
ORDER BY TEAM_ID;
SELECT TEAM_ID, SUM(SALARY)
FROM actors
GROUP BY TEAM_ID
ORDER BY TEAM_ID DESC;