Как решить задачу DML
Для каждого пассажира удалить из таблицы pass_in_trip все записи о его полетах, кроме первого и последнего.
Схема БД состоит из четырех отношений:
Company (ID_comp, name)
Trip(trip_no, ID_comp, plane, town_from, town_to, time_out, time_in)
Passenger(ID_psg, name)
Pass_in_trip(trip_no, date, ID_psg, place)
Таблица Company содержит идентификатор и название компании, осуществляющей перевозку пассажиров. Таблица Trip содержит информацию о рейсах: номер рейса, идентификатор компании, тип самолета, город отправления, город прибытия, время отправления и время прибытия. Таблица Passenger содержит идентификатор и имя пассажира. Таблица Pass_in_trip содержит информацию о полетах: номер рейса, дата вылета (день), идентификатор пассажира и место, на котором он сидел во время полета. При этом следует иметь в виду, что
- рейсы выполняются ежедневно, а длительность полета любого рейса менее суток; town_from <> town_to;
- время и дата учитывается относительно одного часового пояса;
- время отправления и прибытия указывается с точностью до минуты;
- среди пассажиров могут быть однофамильцы (одинаковые значения поля name, например, Bruce Willis);
- номер места в салоне – это число с буквой; число определяет номер ряда, буква (a – d) – место в ряду слева направо в алфавитном порядке;
- связи и ограничения показаны на схеме данных.
Правильный ответ:
trip_no date ID_psg place
1100 2003-04-29 00:00:00.000 1 1a
1123 2003-04-05 00:00:00.000 3 2a
1123 2003-04-08 00:00:00.000 6 4b
1124 2003-04-02 00:00:00.000 2 2d
1145 2003-04-05 00:00:00.000 3 2c
1145 2003-04-25 00:00:00.000 5 1d
1181 2003-04-01 00:00:00.000 1 1a
1181 2003-04-01 00:00:00.000 6 1b
1181 2003-04-01 00:00:00.000 8 3c
1181 2003-04-13 00:00:00.000 5 1b
1182 2003-04-13 00:00:00.000 9 6d
1187 2003-04-14 00:00:00.000 8 3a
1187 2003-04-14 00:00:00.000 10 3d
7771 2005-11-04 00:00:00.000 11 4a
7771 2005-11-09 00:00:00.000 11 5a
7772 2005-11-07 00:00:00.000 12 1d
7772 2005-11-29 00:00:00.000 10 3a
7772 2005-11-29 00:00:00.000 13 1b
7772 2005-11-29 00:00:00.000 14 1c
7773 2005-11-07 00:00:00.000 13 2d
8881 2005-11-08 00:00:00.000 37 1d
8882 2005-11-06 00:00:00.000 37 1a
8882 2005-11-13 00:00:00.000 14 3d
Ксения Маркова is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.