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

Помогите решить задачу по SQL

Максим Гиевский Ученик (116), на голосовании 1 месяц назад
Выведите идентификаторы всех рейсов и количество пассажиров на них. Обратите внимание, что на каких-то рейсах пассажиров может не быть. В этом случае выведите число "0".
Голосование за лучший ответ
Ниндзя В-Зарослях-Укропа Ученик (107) 2 месяца назад
SELECT
t.id ,
COUNT(pt.passenger) AS count
FROM
Trip t
LEFT JOIN
Pass_in_trip pt ON t.id = pt.trip
GROUP BY
t.id ;
Analginka Ученик (185) 2 месяца назад
SELECT Trip.id ,
COALESCE(COUNT(Pass_in_trip.passenger), 0) AS count
FROM Trip
LEFT JOIN Pass_in_trip
ON Trip.id = Pass_in_trip.trip
GROUP BY Trip.id ;
Татьяна Соколова Ученик (103) 1 месяц назад
не понимаю зачем джойнить две таблицы если id в них обоих одинаков
Andrey KЗнаток (326) 1 месяц назад
Затем, что в одной из таблиц нет id рейсов с нулевым количеством пассажиров.
Да АГа Ученик (102) 1 месяц назад
SELECT trip.id , COUNT(passenger) as COUNT FROM Trip
LEFT OUTER JOIN Pass_in_trip ON Pass_in_trip.trip = trip.id
GROUP BY Trip.id
Эльвира Исламова Профи (635) 1 месяц назад
SELECT Trip.id , COUNT(Pass_in_trip.passenger) as count
FROM Trip LEFT JOIN Pass_in_trip
ON Trip.id = Pass_in_trip.trip
GROUP BY Trip.id
Дилора ТашпулатоваЗнаток (277) 1 день назад
Подскажите. пожалуйста, почему не верно решение, если делать просто через JOIN, например:
SELECT id , COUNT(passenger) as count
FROM Trip
JOIN Pass_in_trip
ON Trip.id = Pass_in_trip.trip
GROUP BY id
Похожие вопросы