Оператор SQL SUM() — функция, возвращающая сумму значений столбца таблицы. Используется только для числовых столбцов.
Функция SQL SUM() имеет следующий синтаксис:
SUM ( [ALL | DISTINCT] expression )
Параметр ALL — является параметром по умолчанию. Считается сумма всех строк.
При указании параметра DISTINCT — происходит подсчет только уникальных значений.
Примеры оператора SQL SUM: Имеется следующая таблица Universities:
ID | UniversityName | Students | Faculties | Professores | Location | Site |
1 | Perm State National Research University | 12400 | 12 | 1229 | Perm | psu.ru |
2 | Saint Petersburg State University | 21300 | 24 | 13126 | Saint-Petersburg | spbu.ru |
3 | Novosibirsk State University | 7200 | 13 | 1527 | Novosibirsk | nsu.ru |
4 | Moscow State University | 35100 | 39 | 14358 | Moscow | msu.ru |
5 | Higher School of Economics | 20335 | 12 | 1615 | Moscow | hse.ru |
6 | Ural Federal University | 57000 | 19 | 5640 | Yekaterinburg | urfu.ru |
7 | National Research Nuclear University | 8600 | 10 | 936 | Moscow | mephi.ru |
Пример 1. Используя оператор SQL SUM найти количество студентов (Students) всех университетов в таблице:
SELECT SUM(Students) FROM Universities
Ответ: 161935
Пример 2. Используя оператор SQL SUM найти количество преподавателей московских университетов:
SELECT SUM(Professores) FROM Universities WHERE Location = 'Moscow'
Ответ: 16909
Пример 3. Используя оператор SQL SUM произвести подсчет уникальных значений столбца Faculties:
SELECT SUM(DISTINCT Faculties) FROM Universities
Ответ: 117 (примечание: в столбце Faculties присутствует 2 одинаковых записи, под ID 1 и 5. Значение столбца под ID 5 не суммируется.)