SQL1

       

КАК ИСПОЛЬЗОВАТЬ АГРЕГАТНЫЕ ФУНКЦИИ?


Агрегатные функции используются, подобно именам полей в предложении SELECT-запроса, но с одним исключением: они берут имена полей как аргументы.

Только числовые поля могут использоваться с SUM и AVG.

С функциями COUNT, MAX и MIN могут использоваться и числовые, и символьные поля.

При использовании с символьными полями, MAX и MIN будут транслировать их в эквивалент ASCII, который должен сообщать, что MIN будет означать первое, а MAX последнее значение в алфавитном порядке (алфавитное упорядочивание обсуждается более подробно в Главе 4).

Чтобы найти SUM всех наших покупок в таблице Заказов, мы можем ввести следующий запрос, с выводом на Рисунке 6.1:

SELECT SUM ((amt)) FROM Orders;

=============== SQL Execution Log ============ | | | SELECT SUM (amt) | | FROM Orders; | | ==============================================| | | | ------- | | 26658.4 | | | | | ===============================================

Рисунок 6.1 Определение суммы

Это, конечно, отличается от выбора поля, при котором возвращается одиночное значение, независимо от того, сколько строк находится в таблице. Из-за этого агрегатные функции и поля не могут выбираться одновременно, если не будет использовано предложение GROUP BY (описанное далее).

Нахождение усреднённой суммы - похожая операция (вывод следующего запроса показан на Рисунке 6.2):

SELECT AVG (amt) FROM Orders;

=============== SQL Execution Log ============ | | | SELECT AVG (amt) | | FROM Orders; | | ==============================================| | | | ------- | | 2665.84 | | | | | ===============================================

Рисунок 6.2 Выбор средней суммы



Содержание раздела