Я хочу получить пригород отправления и назначения в моем SQL.
SELECT jp.`id`,
CONCAT(u.`first_name`, " ", u.`last_name`) AS `name`,
jp.`departure_time`,
jp.`destination_time`,
s.`suburb` AS `departure_suburb`
FROM `journey_planning` AS `jp`
JOIN `users` AS `u` ON jp.`driver_id` = u.`id`
JOIN `suburbs` AS s ON jp.`departure_suburb_id` = s.`id`
OR jp.`destination_suburb_id` = s.`id`
Как видите, есть departure_suburb_id
и destination_suburb_id
. Мне нужно, чтобы они сопоставились с их относительным значением в таблице suburbs
.
На данный момент это возвращает две строки, обе с одинаковой информацией, кроме разного названия пригорода (однако оба, как departure_suburb
, очевидно).
Я не эксперт по SQL, поэтому я не уверен, что мне следует делать. Я подумал об использовании подзапросов, но подумал, что, возможно, есть путь без них и избежание двух поисков.
Как мне изменить этот запрос, чтобы он возвращал то, чем он является сейчас, хотя departure_suburb
и destination_suburb
указывают на правильные значения в таблице suburbs
?