- •1. Библиотека
- •2. Университет
- •3. Оптовая база
- •4. Производство
- •5. Сеть магазинов
- •6. Авторемонтные мастерские
- •7. Деканат
- •8. Договорная деятельность организации
- •9. Поликлиника
- •10. Телефонная станция
- •11. Спорт
- •12. Сельскохозяйственные работы
- •13. Городской транспорт
- •14. География
- •16. Аэропорт
- •17. Персональные эвм
- •19. Зоопарк
- •20. Шахматы
- •21. Судоходство.
- •22. Научные конференции.
- •23. Программные продукты.
- •24. Операционная система
- •25. Добыча полезных ископаемых
- •26. Автотранспортное предприятие
- •28. Справочная аптек
- •30. Изучение студентами дисциплин по выбору.
19. Зоопарк
Минимальный список характеристик:
-
Название вида животного, суточное потребление корма, семейство, континент обитания.
-
Название комплекса, номер помещения, наличие водоема, отопления, количество животных в помещении.
Один и тот же вид животного может в зоопарке находиться в разных помещениях и в одном помещении может находиться несколько видов животных.
Выборки:
-
Определить суточное потребление корма обитателями комплекса 'приматы'.
Select суточное потребление корма from животное inner join комплекс on животное.животное id = комплекс.животное id where название комплекса = приматы
-
Выбрать случаи размножения животного вида 'карликовый гиппопотам' в помещении без водоема.
Select count количество животных from комплекс inner join животное on …… where вид животного = карликовый гиппопотам and наличие водоема = FALSE
-
Определить общую численность представителей семейства 'псовые' в зоопарке.
Select sum (численность) from комплекс inner join животное on комплекс.животноеid = животное.животноеid where семейство = псовые
-
Вывести все пары видов, которые содержатся в одном помещении
Select комплекс.помещение, животное.вид животного from комплекс inner join животное on комплекс.животноеid = животное.животноеid group by комплекс.помещение
20. Шахматы
Минимальный список характеристик:
-
Фамилия спортсмена, дата рождения, страна, спортивный разряд, участвовал ли в борьбе за звание чемпиона мира, рейтинг, примечание
-
Турнир, страна, город, дата проведения, уровень турнира;
-
Стартовый номер спортсмена в данном турнире, занятое место.
Один шахматист может участвовать в разных турнирах.
Выборки:
-
Выбрать турнир с самым высоким рейтингом участников.
-
Выбрать те турниры, где все призовые места заняли представители страны-хозяина турнира.
-
Выбрать тех шахматистов, которые заняли не менее трех призовых мест в течение 2000 г.
-
Определить турниры, в которых участник с самым высоким рейтингом занял последнее место.
21. Судоходство.
Минимальный список характеристик:
-
Название корабля, водоизмещение, порт приписки, капитан и т.д.
-
Название порта, страна, категория;
-
Дата посещения порта, дата убытия, номер причала, цель посещения.
Один корабль может посещать несколько портов.
Выборки:
-
Выбрать список кораблей, посещавших 'Одессу' зимой 1998/99 г.
select Корабль.Id, Посещение.Дата_Прибытия, Порт.Название
from Посещение
UNNER JOIN Корабль ON Корабль.ID = Посещение.КорабльId
UNNER JOIN Порт ON Порт.ID = Посещение.ПортId
WHERE Порт.Название = "Одесса" AND
Дата_Прибытия > to_date('31-11-1998') AND
Дата_Прибытия < to_date('1-03-1999')
GROUP BY Корабль.Id;
-
Определить, когда корабль 'Кузнецов' посещал порт 'Новороссийск' с целью 'починки такелажа'.
select Корабль.ID, Корабль.Название, Посещение.ЦельПосещения
from Посещение
UNNER JOIN Корабль ON Корабль.ID = Посещение.КорабльId
UNNER JOIN Порт ON Порт.ID = Посещение.ПортId
WHERE Корабль.Название = "Кузнецов" AND
Порт.Название = "Новороссийск" AND
Посещение.ЦельПосещения = "Починка такелажа"
GROUP BY Корабль.ID;
-
Определить страны, в которые никогда не приходят корабли с целью 'туризм'.
select Порт.Название, Посещение.ЦельПосещения
from Посещение
UNNER JOIN Порт ON Порт.ID = Посещение.ПортId
WHERE Посещение.ЦельПосещения != "туризм"
GROUP BY Порт.Название;
-
Определить, с какой целью чаще всего заходят корабли в порт 'Ялта'.
SELECT *
FROM (SELECT Порт.Название, Посещение.ЦельПосещения, count(Посещение.ЦельПосещения)
FROM Посещение, Порт
WHERE Порт.ID = Посещение.ПортId
GROUP BY count(Посещение.ЦельПосещения) DESC;)
WHERE ROWCOUNT = 1;