Лабораторна робота № 3 (2 год.).
Звіт
Про виконання лабораторної роботи №3
з дисципліни “Бази даних”
Перевірив: Шемшур О. С. | Виконав: Студент 3-го курсу Групи ПЗС-1644 Гребенюк І. А. |
Черкаси 2016
Лабораторна робота № 3 (2 год.).
Тема роботи: Однотабличні запити сортування та групування.
Мета роботи: Вивчення мови запитів, засобів сортування і групування даних.
Завдання:
1. Виконати запити, що повертають всі рядки і всі стовпчики кожної із створених в лабораторній роботі №2 таблиць.
2. Виконати запити, вказані у Вашому варіанті (кожен пункт завдання реалізується одним оператором SELECT).
3. Перевірити правильність роботи створених запитів.
4. Створити запити з сортуванням та групуванням.
Варіант 7:
1. Вивести назви предметів і ступінь їх забезпечення в лабораторії №605.
2. Вивести перших 5 студентів за абеткою.
3. Вивести список лабораторій, що забезпечують мову С++.
4. Вивести список лабораторій та кількість предметів, яку вони забезпечують.
5. Вивести назви предметів, що викладаються на протязі тижня.
Результат виконання:
Запити, що повертають всі рядки і всі стовпчики таблиць:
1). select * from student;
Рис. 1 – Всі рядки і всі стовпчики таблиці student
2). select * from laboratories;
Рис. 2 – Всі рядки і всі стовпчики таблиці laboratories
3). select * from rozklad;
Рис. 3 – Всі рядки і всі стовпчики таблиці rozklad
4). select * from groups;
Рис. 4 – Всі рядки і всі стовпчики таблиці groups
5). select * from predmets;
Рис. 5 – Всі рядки і всі стовпчики таблиці predmets
Виконання завдань по варіанту:
1). select predmets.title, laboratories.provision from predmets, laboratories, rozklad
where rozklad.id_predmet=predmets.id_predmet and rozklad.room_number=605
group by predmets.title;
Рис. 6 – Виведення назви предмету та ступінь його забезпеченості в лабораторії 605
2). select * from student order by name desc limit 5;
Рис. 7 – Виведення перших 5 студентів за абеткою
3). select * from laboratories where title like "%c++%";
Рис. 8 – Список лабораторій, що забезпечують мову С++
4). select laboratories.title, count(*) as 'Количество прикрепленных предметов'
from laboratories, rozklad where laboratories.number_room=rozklad.room_number
group by laboratories.title;
Рис. 9 – Список лабораторій та кількість предметів які вони забезпечують
5). select * from predmets where week(start_date)=week(curdate());
Рис. 10 – Список предметів, що викладаються на протязі тижня
Запити сортування та групування:
1). select count(*) as 'Количество предметов которые имеют одинаковое количество часов', count_hour as 'Количество часов' from predmets group by count_hour;
Рис. 11 – (Результат запиту групування) Список кількості предметів, що мають однакову кількість годин
2). select * from predmets order by start_date asc;
Рис. 11 – (Результат запиту сортування) Список предметів, відсортовані по спаданню за полем start_date
Висновок
На даній лабораторній роботі я набув навичок використання операторів групування(group by), сортування(order by).