SQL имеет много разных категорий функций
•действующие над значениями отдельной строки таблицы (функции одной строки), то есть в этих функциях в качестве аргументов используются значения столбцов одной строки и возвращают они одно значение;
•агрегатные функции (или групповые функции), оперируют значениями столбцов из множества строк и возвращают одно значение.
Мы разберем 2 категории
6
Агрегатные функции
В стандарте SQL определены следующие виды агрегатных функций:
•унарные агрегатные функции;
•бинарные агрегатные функции;
•функции инверсного распределения.
Унарные агрегатные функции (1)
Причем только такие, которые применяются к строкам таблицы. В стандарте SQL определены следующие унарные агрегатные функции:
•COUNT — подсчет количества значений в столбце или количества строк в таблице; •SUM — подсчет суммы;
•AVG — подсчет среднего значения; •MAX — выбор максимального значения; •MIN — выбор минимального значения ;
Унарные агрегатные функции (2)
•VAR_POP — дисперсия генеральной совокупности
•STDDEV_POP — среднее квадратичное отклонение генеральной совокупности;
•VAR_SAMP – выборочная дисперсия;
•STDDEV_ SAMP — среднее квадратичное отклонение выборочной дисперсии;
•EVERY — возвращает логическое значение TRUE, если все значения в столбце являются TRUE;
•ANY, SOME — возвращает логическое значение TRUE, если хотя бы одно значение в столбце является TRUE.
Унарные агрегатные функции (3)
Конкретные СУБД расширяют этот список специфическими агрегатными функциями. Например, в Oracle определено около 30 агрегатных функций.
Общий формат агрегатной функции следующий:
имя_функции ([ALL | DISTINCT] выражение) [FILTER (WHERE условие)]