Применение функций агрегирования
Запросы могут давать в результате не только группу значений, но и работать по одному полю. Для этого применяются агрегатные функции:
· COUNT определяет количество строк или значений поля, выбранных посредством запроса (и не NULL);
· SUM- арифметическая сумма всех значений поля;
· AVG- среднее значение по выбранному полю;
· MAX, MIN.
Пример:
SELECT SUM (amt)
|
Сумма всех заявок из таблицы Orders. На выходе- единственное значение.
Специальные атрибуты в COUNT (подсчет)
Когда нужно подсчитать по столбцу, используют DISTINCT (только для различных значений).
SELECT COUNT (DISTINCT snum) FROM Orders;
Для того, чтобы считать целиком строки:
SELECT COUNT (*) FROM Customers;
и NULL и повторения включаются.
Если мы хотим исключить NULL и сузить до поля, то используется ALL:
SELECT COUNT (ALL rating) FROM Customers;
Подсчитываем исключая NULL, но включая повторения.
Скалярные выражения
До сих пор в аргументах агрегатных функций было одно поле, возможно и выражение:
SELECT MAX (binc + amt) FROM Orders
Для каждой строки сначала берется сумма двух полей, а потом из всех таких сумм- МАХ.
Дата добавления: 2014-11-29; просмотров: 779;