Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лк №14 Управление данными.doc
Скачиваний:
4
Добавлен:
11.11.2019
Размер:
86.02 Кб
Скачать

Должность

------------------- -------------

Ассистент 3

Доцент 4

Зав.каф. 2

Проф. 3

Ст.преп. 2

(5 row(s) affected)

MAX()

Функция возвращает максимальное значение в указанном диапазоне. Эта функция может использоваться как в обычных запросах, так и в запросах с группировкой. Синтаксис:

MAX([ALL|DISTINCT] <выражение>)

Пример:

SELECT MAX(Количество_часов), MAX(Количество_часов/2)

FROM Учебный_план

Результат выполнения запроса:

------------------- -------------

  1. 70

(1 row(s) affected)

MIN()

Возвращает минимальное значение в указанном диапазоне. Синтаксис:

MIN ([ALL|DISTINCT]<выражение>)

Пример:

SELECT MIN(Количество_часов)

FROM Учебный_план

-----------

12

(1 row(s) affected)

SUM()

Функция выполняет обычное суммирование значений в указанном диапазоне. В качестве такого диапазона может рассматриваться группа или весь набор строк (без использования GROUP BY)

Синтаксис:

SUM([ALL| DISTINCT] <выражение>)

Пример:

SELECT SUM(Количество_часов), COUNT (*),SUM(Количество_часов)/ COUNT (*),AVG(Количество_часов)

FROM Учебный_план

Результат:

------------- -------------- ------------ ----------

694 89 41 41

(1 row(s) affected)

Пример группировки значений таблицы Учебный_план. Произведем группировку строк по семестрам (столбец Семестр) и подсчитаем общую нагрузку в часах на каждый семестр:

SELECT Семестр, SUM(Количество часов) AS ‘Нагрузка’

FROM Учебный_план

GROUP BY Семестр

В первом столбце выведен номер семестра. Это единственный столбец исходной таблицы, который можно включать в запрос непосредственно, так как по нему осуществляется группировка. Во втором столбце с помощью функции SUM была получена сумма значений столбца Количество_часов. Функции агрегирования работают со всеми строками группы, возвращая единственное значение для всех этих строк.

Семестр

Нагрузка

706

486

562

474

484

334

312

266

64

Рассмотрим запрос, подсчитывающий количество экзаменов в каждом семестре:

SELECT Семестр, COUNT(*) AS ‘Экзамены’

FROM Учебный_план

WHERE Отчетность= ‘э’

GROUP BY Семестр

Результат выполнения запроса:

Семестр

Экзамены

3

4

5

4

5

3

3

2

1