Лабораторна робота № 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).