Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Программирование / Конспект (Архитектуры обработки данных + SQL).doc
Скачиваний:
91
Добавлен:
10.12.2013
Размер:
336.9 Кб
Скачать
      1. Агрегатные функции

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

Стандартными агрегатными функциями являются SUM, MIN, MAX, AVG, COUNT.

        1. Вычисление суммы столбца (sum)

Агрегатная функция SUM () вычисляет сумму всех значений, содержащихся в столбце. При этом столбец должен иметь числовой тип данных (содержать целые числа, десятичные числа, числа с плавающей запятой или денежные величины). Результат, возвращаемый этой функцией, имеет тот же тип данных, что и столбец.

Вычислить оборот за каждый день в течение месяца.

SELECT ДАТА_ДОК

SUM (КОЛ-ВО*ЦЕНА)

FROM ПЕРЕМЕЩЕНИЕ

WHERE ДАТА_ДОК BETWEEN ‘1.01.2000’ AND ’31.01.2000’

        1. Вычисление экстремумов (min и max)

Агрегатные функции MIN () и MAX () позволяют найти соответственно наименьшее и наибольшее значения в столбце. При этом столбец может содержать числовые или строковые значения либо значения даты/времени. Результат возвращаемый этими функциями, имеет точно такой же тип данных, что и сам столбец.

Вывести максимальную цену товара.

SELECT MAX (ЦЕНА)

FROM ПЕРЕМЕЩЕНИЕ

Когда был сделан самый первый из всех содержащихся в базе данных документ?

SELECT MIN (ДАТА)

FROM ДОКУМЕНТ

В случае применения агрегатных функций MIN () и MAX () к числовым данным числа сравниваются по арифметическим правилам (большие отрицательные числа меньше, чем маленькие отрицательные числа, которые меньше нуля; нуль меньше любого положительного числа). Сравнение дат происходит последовательно (более ранние значения дат считаются меньшими, чем более поздние). Сравнение интервалов времени выполняется на основании их продолжительности (более короткие интервалы времени меньше, чем более длинные).

        1. Вычисление среднего значения (avg)

Агрегатная функция AVG () вычисляет среднее всех значений, содержащихся в столбце. Данные, содержащиеся в столбце, должны иметь числовой тип. Поскольку функция AVG () вначале суммирует все значения, содержащиеся в столбце, а затем делит сумму на число этих значений, возвращаемый ею результат может иметь не такой тип данных, как столбец. Например, если применить функцию AVG () к столбцу целых чисел, результат будет либо десятичным числом, либо числом с плавающей запятойв зависимости от используемой СУБД.

Вычислить среднее значение цены и количества в таблице «Остатки».

SELECT AVG(ЦЕНА),AVG(КОЛИЧЕСТВО)

FROM ОСТАТКИ

        1. Вычисление количества значений в столбце (count)

Агрегатная функция COUNT () подсчитывает количество значений в столбце. При этом тип данных может быть любым. Функция COUNT () всегда возвращает целое число независимо от типа данных столбца.

Вывести количество фирм, являющихся ЗАО.

SELECT COUNT(*)

FROM КЛИЕНТ

WHERE НАЗВАНИЕ LIKE ‘%ЗАО%’

Соседние файлы в папке Программирование