Расписание работы поликлиники
Описание предметной области (ПО).
В поликлинике работают врачи нескольких специальностей, организованных по отделениям (терапевты, хирурги и т.п.)
В каждом отделении работает несколько врачей разной квалификации.
Каждое отделение занимает несколько кабинетов.
У каждого врача есть расписание приема больных (понедельник - пятница).
Про каждое отделение известно: номер отделения, личный номер врача-заведующего.
Про каждый кабинет известно: номер кабинета, принадлежность отделению, номер врача-ответственного за кабинет, оборудован ли сигнализацией (да/нет)
Про каждого врача известно: личный номер, ФИО, специальность, квалификация (номер категории), расписание работы (понед: номер кабинета, время начала, время конца; вторник:…….; пятница……..), число больных, принятых в каждый день недели по расписанию.
Семантические допущения:
Ø Каждый врач работает только по одной специальности
Ø В любой момент времени в одном кабинете ведет прием только один врач
Ø При увольнении врача расписание его работы аннулируется
Ø Каждый кабинет занимают врачи только одной специальности
Ø Любой врач не обязательно ведет прием все пять дней в неделю
Могут быть сделаны и другие обоснованные допущения
Задание
Написать команды SQL Oracle для следующих операций манипулирования данными:
1. Уволить врача
2. Принять врача на работу
3. Изменить режим работы врача
4. Изменить категорию врача
5. Подсчитать число больных, принятых врачом Х за все время существования поликлиники
6. Подсчитать число больных, принятых врачом Х за последний месяц
7. Выдать список всех врачей, работающих более Х часов в неделю
8. Выдать список всех врачей, не работающих по средам
9. Выдать список всех врачей, ответственных за кабинеты отделения Х
10. Выдать список всех врачей, свободных в четверг в 17:00
11. Выдать список всех врачей, занятых в понедельник в 11:15
12. Выдать список всех врачей отделения Х, упорядоченный по количеству принятых за неделю больных
13. Добавить отделению новый кабинет
14. Выдать список всех врачей, упорядоченный по специальности и квалификации
15. Выдать список всех отделений, упорядоченный по количеству принятых за неделю больных
16. Выдать список всех врачей, ведущих прием в 12:00 в понедельник (№ врача, специальность, № кабинета, ФИО врача)
17. Определить: работает ли какой-либо врач специальности Х в 12:00 в понедельник
18. Подсчитать общее число больных, принятых в поликлинике в понедельник
19. Выдать список кабинетов, в которых ведет пием врач Х
20. Выдать список врачей, ведущих прием в кабинете Х
21. Выдать список всех кабинетов, упорядоченный по числу прошедших через них больных
22. Выдать список всех врачей 3-й категории, ведущих прием в кабинете Х
Для упрощения SQL-запросов можно использовать представления.
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.