Слайд 2
![Агрегирующие функции позволяют получать из таблицы сводную (агрегированную) информацию, выполняя операции над группой строк таблицы.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-1.jpg)
Агрегирующие функции позволяют
получать из таблицы сводную
(агрегированную) информацию,
выполняя операции над группой
строк таблицы.
Слайд 3
![Для задания в SELECT-запросе агрегирующих операций используются следующие ключевые слова:](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-2.jpg)
Для задания в
SELECT-запросе
агрегирующих операций
используются следующие
ключевые слова:
Слайд 4
![COUNT определяет количество строк или значений поля, выбранных посредством запроса и не являющихся NULL-значениями](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-3.jpg)
COUNT
определяет количество строк или значений поля, выбранных посредством запроса
и не являющихся NULL-значениями
Слайд 5
![SUM вычисляет арифметическую сумму всех выбранных значений данного поля;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-4.jpg)
SUM
вычисляет арифметическую сумму всех выбранных значений данного поля;
Слайд 6
![AVG вычисляет среднее значение для всех выбранных значе- ний данного поля;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-5.jpg)
AVG
вычисляет среднее значение для всех выбранных значе-
ний данного поля;
Слайд 7
![МАХ вычисляет наибольшее из всех выбранных значений данного поля;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-6.jpg)
МАХ
вычисляет наибольшее из всех выбранных значений
данного поля;
Слайд 8
![MIN вычисляет наименьшее из всех выбранных значений данного поля.](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-7.jpg)
MIN
вычисляет наименьшее из всех выбранных значений
данного поля.
Слайд 9
![В SELECT-запросе агрегирующие функции используются аналогично именам полей, при этом](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-8.jpg)
В SELECT-запросе
агрегирующие функции используются аналогично именам полей, при этом
последние (имена полей) используются в качестве аргументов этих функций
Слайд 10
![ПРИМЕРЫ Для определения среднего значения поля ОЦЕНКА по всем записям таблицы ОЦЕНКИ SELECT AVG(оценка) FROM ОЦЕНКИ;](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-9.jpg)
ПРИМЕРЫ
Для определения среднего значения поля ОЦЕНКА по всем записям таблицы ОЦЕНКИ
SELECT
AVG(оценка)
FROM ОЦЕНКИ;
Слайд 11
![ПРИМЕРЫ Для подсчета общего количества строк в таблице следует использовать](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-10.jpg)
ПРИМЕРЫ
Для подсчета общего количества строк в таблице следует использовать функцию COUNT
со звездочкой
SELECT COUNT(*)
FROM ОЦЕНКИ;
Слайд 12
![ПРИМЕРЫ Аргументы DISTINCT и ALL позволяют, соответственно, исключать и включать](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-11.jpg)
ПРИМЕРЫ
Аргументы DISTINCT и ALL позволяют, соответственно, исключать и включать дубликаты обрабатываемых
функцией
SELECT COUNT(DISTINCT Код_Предмета)
FROM ПРЕДМЕТЫ;
Слайд 13
![Предложение GROUP BY (группировать по) позволяет группировать записи в подмножества,](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-12.jpg)
Предложение GROUP BY (группировать по) позволяет группировать записи в подмножества, определяемые
значениями какого-либо поля, и применять агрегирующие функции уже не ко всем записям таблицы, а раздельно к каждой сформированной группе.
Слайд 14
![GROUP BY Следует иметь в виду, что в предложении GROUP](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-13.jpg)
GROUP BY
Следует иметь в виду, что в предложении GROUP BY должны
быть указаны все выбираемые столбцы, приведенные после ключевого слова SELECT, кроме столбцов, указанных в качестве аргумента в агрегирующей функции.
Слайд 15
![ПРИМЕРЫ Требуется найти максимальное значение оценки, полученной каждым студентом SELECT](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-14.jpg)
ПРИМЕРЫ
Требуется найти максимальное значение оценки, полученной каждым студентом
SELECT Код_студента, MAX(оценка)
FROM
ОЦЕНКИ
GROUP BY Код_студента;
Слайд 16
![GROUP BY Например: для группирования может быть использовано более одного](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-15.jpg)
GROUP BY Например:
для группирования может быть использовано более одного столбца
SELECT
Код_студента, Код_предмета, MAX (оценка)
FROM ОЦЕНКИ
GROUP BY Код_студента, код_предмета;
Слайд 17
![HAVING При необходимости часть сформированных с помощью GROUP BY групп](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-16.jpg)
HAVING
При необходимости часть сформированных с помощью GROUP BY групп может быть
исключена с помощью предложения HAVING.
Предложение HAVING определяет критерий, по которому группы следует включать в выходные данные
Слайд 18
![HAVING В условии, задаваемом предложением HAVING, указывают только поля или](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-17.jpg)
HAVING
В условии, задаваемом предложением HAVING, указывают только поля или выражения, которые
на выходе имеют единственное значение для каждой выводимой группы
Слайд 19
![ПРИМЕРЫ SELECT Наименование, MAX(Часы) FROM ПРЕДМЕТЫ GROUP BY Наименование HAVING MAX (Часы >= 72);](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-18.jpg)
ПРИМЕРЫ
SELECT Наименование, MAX(Часы)
FROM ПРЕДМЕТЫ
GROUP BY Наименование
HAVING MAX (Часы >= 72);
Слайд 20
![](/_ipx/f_webp&q_80&fit_contain&s_1440x1080/imagesDir/jpg/12684/slide-19.jpg)