Добавил:
tg: @petmanchenko Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Отчёт Команды SELECT

.docx
Скачиваний:
0
Добавлен:
02.02.2025
Размер:
109.99 Кб
Скачать

ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ БЮДЖЕТНОЕ ОБРАЗОВАТЕЛЬНОЕ

УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ТЕЛЕКОММУНИКАЦИЙ ИМ. ПРОФ. М.А. БОНЧ-БРУЕВИЧА»

(СПбГУТ)

Кафедра безопасности информационных систем

ОТЧЁТ по домашней работе на тему: «Команды SELECT» по дисциплине «Управление данными»

Выполнил: студент группы ИСТ-931, Гетманченко П.А.

«02» мая 2021 г. ____________/П.А. Гетманченко/

Принял: к.т.н., доцент Липанова И.А.

«02» мая 2021 г. ____________/И.А. Липанова/

Санкт-Петербург 2021

Цель: написать запросы по 4 задачам.

Ход работы

Задание №1: вывести номер отдела, среднюю зарплату и сумму зарплат по отделам. Упорядочить по номеру отдела.

Код программы для задания №1:

SELECT department_id AS Номер_отд, ROUND(AVG(salary)) AS Ср_Зп, SUM(salary) AS Сумма_Зп_Отд

FROM employees

GROUP BY department_id

ORDER BY department_id;

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

Рисунок 1 – запрос и результат запроса по задаче №1

Задание №2: вывести номер отдела, город, среднюю зарплату и сумму зарплат по отделам и городам.

Код программы для задания №2:

SELECT a.department_id AS Номер_отд, city AS Город, ROUND(AVG(salary)) AS Ср_Зп, SUM(salary) AS Сумма_Зп_Отд

FROM employees b

JOIN departments a ON b.department_id = a.department_id

JOIN locations d ON a.location_id = d.location_id

GROUP BY a.department_id, city;

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

Рисунок 2 – запрос и результат запроса по задаче №2

Задание №3: вывести номер отдела, город, среднюю зарплату и сумму зарплат по отделам и городам, для случая, когда сумма зарплат больше 22000.

Код программы для задания №3:

SELECT a.department_id AS Номер_отд, city AS Город, ROUND(AVG(salary)) AS Ср_Зп, SUM(salary) AS Сумма_Зп_Отд

FROM employees b

JOIN departments a ON b.department_id = a.department_id

JOIN locations d ON a.location_id = d.location_id

GROUP BY a.department_id, city

HAVING SUM(salary) > 22000;

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

Рисунок 3 – запрос и результат запроса по задаче №3

Задание №4: вывести максимальное среднее значение по отделам.

Код программы для задания №4:

SELECT ROUND(MAX(AVG(salary))) AS Макс_Ср_Отд

FROM employees

GROUP BY department_id;

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

Рисунок 4 – запрос и результат запроса по задаче №4

Вывод

Были написаны запросы по 4 задачам, работающие впоследствии корректно.