
- •Занятие 3 Инструкция select Простая выборка
- •Выборка с условием (фильтрация)
- •Фильтрация по одному полю
- •Расширенные условия отбора
- •Сортировка
- •Вычисляемые поля
- •Математические операции между столбцами.
- •Функция round
- •Текстовые операции. Сцепление столбцов. Функции len, left
- •Функции Даты
- •Условный оператор iif
- •Занятие 7 Статистические функции в sql
- •Группировка данных
- •Группировка по одному столбцу
- •Группировка по нескольким столбцам
- •Фильтрация групп
- •Сортировка групп
- •Примеры:
- •Фамилия бажанова коваленко лапина
- •Занятие 8 Подзапросы
- •Использование подзапросов возвращающих одно значение
- •Использование подзапросов возвращающих несколько значений
- •Примеры с подзапросами
- •Соединение таблиц
- •Инструкции на изменение данных Инструкция: delete
- •Инструкция update
- •Инструкция: insert into
- •Insert into ИмяТаблицы
- •Комбинированные запросы
Занятие 7 Статистические функции в sql
В SQL предусмотрено пять статистических функций:
COUNT() Возвращает число строк в столбце.
SUM() Возвращает сумму всех значений в столбце.
AVG() Возвращает среднее значение столбца.
MIN() Возвращает минимальное значение в столбце.
MАХ() Возвращает максимальное значение в столбце.
В скобках указывается имя столбца.
Применение статистических функций рассмотрим на примере таблицы "Ведомость" учитывающей фамилию студента, его академическую группу и экзаменационный балл.
Ведомость
Фамилия
Группа
Балл
Смирнов
3
15
Васильев
2
23
Петухов
2
45
Рунов
1
21
Алексеев
3
36
Романов
1
45
Шадрин
1
23
Воротников
2
21
Баранов
3
36
Синицын
2
33
Гришин
1
23
Задание:
Определить общее количество студентов.
Определить сумму баллов студентов 2-й
группы
Для студентов 1-й группы определить:
- их количество,
- средний балл,
- минимальный балл
- максимальный балл
Запрос 1.
SELECT
COUNT(Группа)
AS
Количество
FROM
Ведомость
Количество
11
Запрос 2.
SELECT
SUM(Балл)
AS
Количество
FROM
Ведомость
WHERE Группа
= 2
Количество
122
З
SELECT
COUNT(Группа)
AS
Количество,
AVG(Балл)
AS
[Ср балл],
MIN(Балл)
AS
Минимум,
MAX(Балл)
AS
Максимум
FROM
Ведомость
WHERE Группа
= 1
Количество
Ср балл
Минимум
Максимум
4
28
21
45
Группировка данных
Статистические функции выполняют действия или над всеми данными в столбце, или над данными отобранными предложением WHERE.
Если возникнет необходимость в статистической обработке данных, принадлежащих различным смысловым группам, то необходимо применить операцию группирования, т.е. создать группы данных и применить к ним статистические функции.
Для создания групп данных используется предложение GROUP BY, где перечисляются столбцы, по которым осуществляется группировка.
Группировка по одному столбцу
Создание групп по одному столбцу, рассмотрим на примере таблицы "Ведомость"
Класс
Балл
3
15
2
23
2
45
1
21
3
36
1
45
1
23
2
21
3
36
2
33
1
23
Задание:
Определить количество учеников в
каждом классе.
Определить количество учеников в
каждой классе и средний балл в классе.
Для 1-го и 3-го класса, определить
минимальный и максимальный балл.
Ведомость
Запрос 1.
SELECT
Класс, COUNT(Класс)
AS
Количество
FROM
Ведомость
GROUP
BY
Класс
Класс
Количество
1
4
2
4
3
3
Запрос 2.
SELECT
Класс,
COUNT(Класс)
AS
Колич,
AVG(Балл)
AS
[Ср
балл]
FROM
Ведомость
GROUP
BY Класс
Класс
Колич
Ср балл
1
4
28
2
4
30,5
3
3
29
З
Класс
Мин
Макс
1
21
45
3
15
36
SELECT
Класс,
MIN
(Балл) AS
Мин,
MAX
(Балл) AS
Макс
FROM
Ведомость
WHERE
Класс IN
(1, 3)
GROUP
BY
Класс