Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
sql.doc
Скачиваний:
6
Добавлен:
01.07.2025
Размер:
962 Кб
Скачать
☆

Лабораторная работа №4 Агрегированные функции

Цель работы: Научиться находить сумму полей, максимальное, минимальное, среднее значения полей, подсчитывать количество записей.

Ключевые слова: функции COUNT, SUM, MAX, MIN, AVG.

Теоретический материал:

Агрегированные функции используются подобно именам полей в предложении SELECT запроса, но с учетом того, что они берут имена полей в качестве аргумента. С SUM и AVG используются только числовые поля, а с COUNT, MAX, MIN могут использоваться числовые или символьные поля.

Функция COUNT производит подсчет количества строк или не-NULL значений полей, которые выбрал запрос.

  1. Подсчитать количество записей в таблице DANNIE.

SELECT COUNT(*) FROM DANNIE

В результате выполнения этого запроса появится столбец с заголовком COUNT(*), поэтому можно использовать оператор переименования.

  1. Подсчитать количество записей в таблице DANNIE и назвать поле КОЛИЧЕСТВО.

SELECT COUNT(*) AS КОЛИЧЕСТВО FROM DANNIE

Функция SUM рассчитывает арифметическую сумму всех выбранных значений данного поля.

  1. Вывести сумму оценок студентов сгруппированных по номеру группы.

SELECT KOD_GRUPPY, SUM(OCENKA) FROM DANNIE, USPEV GROUP BY KOD_GRUPPY

Функция AVG – производит усреднение всех выбранных значений данного поля.

  1. Вывести среднее значения оценок.

SELECT AVG(OCENKA) FROM USPEV

Функция MAX – находит и возвращает наибольшее из всех выбранных значений данного поля.

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

SELECT MAX(OCENKA) FROM USPEV

Функция MIN – находит и возвращает наименьшее из всех выбранных значений данного поля.

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

SELECT MIN(OCENKA) FROM USPEV

Ключевое слово GROUP BY – указывает условие группировки строк.

  1. Вывести среднее оценок, максимальную оценку, минимальную оценку студентов сгруппированных по номеру группы, с указанием имени у каждого столбца.

SELECT KOD_STUDENT, AVG(OCENKA) AS СРЕДНЯЯ, MAX(OCENKA) AS МАКСИМАЛЬНАЯ, MIN (OCENKA) AS МИНИМАЛЬНАЯ FROM USPEV GROUP BY KOD_STUDENT

  1. Вывести коды и численность групп, в которых более 2 человек.

SELECT KOD_GRUPPY, COUNT(*) FROM DANNIE GROUP BY KOD_GRUPPY HAVING COUNT(*)>2

Задания:

Внимание: необходимо переименовать каждое вычисляемое поле.

  1. Найти среднее значение оценок по каждому студенту.

  2. Найти максимальную оценку по каждой дисциплине.

  3. Найти среднюю оценку, выставленную каждым преподавателем.

  4. Вывести минимальную оценку, выставленную каждым преподавателем.

  5. Перевести каждую оценку в рейтинговый бал (оценка, большая 3 баллов, увеличивается в 2 раза).

  6. Подсчитать количество разных групп.

  7. Подсчитать количество различных квартир.

  8. Вывести среднюю оценку, максимальную оценку, минимальную оценку для студента с кодом 3.

  9. Подсчитать количество хороших оценок.

  10. Подсчитать процент двоек, выставленных каждым преподавателем.

  11. Посчитать количество и сумму 5-к и 4-к.

  12. Подсчитать процент качества и процент успеваемости (общее количество оценок 26).

  13. На скольких улицах проживают более 1 студента.

  14. Вывести количество оценок, для которых выполняется условие «оценка*2+1>10».

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]