- •Содержание
- •Введение
- •Лабораторная работа №1 Разработка базы данных. Основы работы в MySql
- •Часть 1. Нормализация данных
- •Типы данных
- •Лабораторная работа №2 Выборка данных - оператор select
- •Заполнение таблицы данными
- •Выполнение запросов
- •Экспорт бд
- •Импорт бд
- •Лабораторная работа №3 Уточнения запросов
- •Лабораторная работа №4 Агрегированные функции
- •Лабораторная работа №5 Строковые и числовые функции
- •Основные строковые функции
- •Основные числовые функции
- •Лабораторная работа №6 Условные выражения с оператором case
- •Лабораторная работа №7 Простые подзапросы
- •Подзапросы, возвращающие единственное значение
- •Подзапросы, возвращающие список значений, из одного столбца таблицы
- •Лабораторная работа №8 Связанные подзапросы
- •Условное соединение (join …on)
- •Соединение по именам столбцов (join …using)
- •Лабораторная работа №10 Добавление, удаление и изменение данных
- •Добавление новых записей
- •Удаление записей
- •Изменение данных
- •Лабораторная работа №11 Представления
- •Лабораторная работа №12 Связь mysql и delphi
- •Список литературы:
Лабораторная работа №4 Агрегированные функции
Цель работы: Научиться находить сумму полей, максимальное, минимальное, среднее значения полей, подсчитывать количество записей.
Ключевые слова: функции COUNT, SUM, MAX, MIN, AVG.
Теоретический материал:
Агрегированные функции используются подобно именам полей в предложении SELECT запроса, но с учетом того, что они берут имена полей в качестве аргумента. С SUM и AVG используются только числовые поля, а с COUNT, MAX, MIN могут использоваться числовые или символьные поля.
Функция COUNT производит подсчет количества строк или не-NULL значений полей, которые выбрал запрос.
Подсчитать количество записей в таблице DANNIE.
SELECT COUNT(*) FROM DANNIE
В результате выполнения этого запроса появится столбец с заголовком COUNT(*), поэтому можно использовать оператор переименования.
Подсчитать количество записей в таблице DANNIE и назвать поле КОЛИЧЕСТВО.
SELECT COUNT(*) AS КОЛИЧЕСТВО FROM DANNIE
Функция SUM рассчитывает арифметическую сумму всех выбранных значений данного поля.
Вывести сумму оценок студентов сгруппированных по номеру группы.
SELECT KOD_GRUPPY, SUM(OCENKA) FROM DANNIE, USPEV GROUP BY KOD_GRUPPY
Функция AVG – производит усреднение всех выбранных значений данного поля.
Вывести среднее значения оценок.
SELECT AVG(OCENKA) FROM USPEV
Функция MAX – находит и возвращает наибольшее из всех выбранных значений данного поля.
Вывести максимальную оценку.
SELECT MAX(OCENKA) FROM USPEV
Функция MIN – находит и возвращает наименьшее из всех выбранных значений данного поля.
Вывести минимальную оценку студентов.
SELECT MIN(OCENKA) FROM USPEV
Ключевое слово GROUP BY – указывает условие группировки строк.
Вывести среднее оценок, максимальную оценку, минимальную оценку студентов сгруппированных по номеру группы, с указанием имени у каждого столбца.
SELECT KOD_STUDENT, AVG(OCENKA) AS СРЕДНЯЯ, MAX(OCENKA) AS МАКСИМАЛЬНАЯ, MIN (OCENKA) AS МИНИМАЛЬНАЯ FROM USPEV GROUP BY KOD_STUDENT
Вывести коды и численность групп, в которых более 2 человек.
SELECT KOD_GRUPPY, COUNT(*) FROM DANNIE GROUP BY KOD_GRUPPY HAVING COUNT(*)>2
Задания:
Внимание: необходимо переименовать каждое вычисляемое поле.
Найти среднее значение оценок по каждому студенту.
Найти максимальную оценку по каждой дисциплине.
Найти среднюю оценку, выставленную каждым преподавателем.
Вывести минимальную оценку, выставленную каждым преподавателем.
Перевести каждую оценку в рейтинговый бал (оценка, большая 3 баллов, увеличивается в 2 раза).
Подсчитать количество разных групп.
Подсчитать количество различных квартир.
Вывести среднюю оценку, максимальную оценку, минимальную оценку для студента с кодом 3.
Подсчитать количество хороших оценок.
Подсчитать процент двоек, выставленных каждым преподавателем.
Посчитать количество и сумму 5-к и 4-к.
Подсчитать процент качества и процент успеваемости (общее количество оценок 26).
На скольких улицах проживают более 1 студента.
Вывести количество оценок, для которых выполняется условие «оценка*2+1>10».
