Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Помогите пожалуйста решить задачку по SQL

Анна Владимировна Ученик (97), открыт 4 дня назад
Добрый день!

Помогите пожалуйста, какой алгоритм и какие операторы лучше использовать для решения данной задачи? Ломаю голову 3 день(((

Между какими городами пассажиры не делали пересадки? Пересадкой считается нахождение пассажира в промежуточном аэропорту менее 24 часов.

Cсылка на описание базы: https://edu.postgrespro.ru/bookings.pdf

я не прошу решения, просто подсказку, пинок))
1 ответ
Вячеслав Рожнев Профи (692) 3 дня назад
Сначала нужно понять когда пассажир делает пересадку! Я предполагаю что в случае когда к одному заказу привязаны билеты на более чем один рейс. Если я прав то следует начинать с такого запроса

 select book_ref 
from bookings
join tickets using( book_ref )
join ticket_flights using( ticket_no )
group by book_ref
having count(distinct flight_id ) > 1;
Проверить его можно здесь https://sqlize.online/sql/psql10demo/4e3f110fb589448e651a133aeb4294b7/

Если вам интересны ещё задачи по SQL - заходите на мой сайт https://sqltest.online/ru/question/bookings/get-airports-data
Похожие вопросы