Павел Михаловский
Просветленный
(36173)
2 года назад
А какая конкретно БД?
1. select count(*) from Trip where town_from = 'Rostov';
2. select plane, count(plane) from Trip group by plane;
4. select count(distinct ID_psg) from Trip T inner join Pass_in_trip P on T.id = P.trip_no where T.plane = 'Boeing'; (Предположим, что один пассажир может быть на нескольких рейсах с Боингом и поэтому выбираем только уникальных пассажиров). Если не обязательно искать уникальных пассажиров, просто убери distinct
1. Company (ID_comp, name)
2. Trip (trip_no, ID_comp, plane, town_from, town_to, time_out, time_in)
3. Passenger (ID_psg, name)
4. Pass_in_trip (trip_no, date, ID_psg, place)
Таблица Company содержит идентификатор и название компании, осуществляющей перевозку пассажиров. Таблица Trip содержит информацию о рейсах: номер рейса, идентификатор компании, тип самолета, город отправления, город прибытия, время отправления и время прибытия. Таблица Passenger содержит идентификатор и имя пассажира. Таблица Pass_in_trip содержит информацию о полетах: номер рейса, дата вылета (день), идентификатор пассажира и место, на котором он сидел во время полета. При этом следует иметь в виду, что среди пассажиров могут быть однофамильцы (одинаковые значения поля name, например, Bruce Willis).
Задача 25
1. Определите общее число рейсов из Ростова.
2. Для каждого типа самолета определите число рейсов, выполняемых на самолетах этого типа.
3. Определите число пассажиров, перевезенных на самолетах Boeing.