我正在尝试编写一个查询来确定我不能直接从一个城市飞往哪些城市,比如伦敦。给定架构:
城市:
| c_id | city_name |
航班:
| f_id | departure_city_id | destination_city_id |
目前我的查询返回相反的结果,即它返回从伦敦直飞的城市
SELECT c2.city_name as "City"
FROM flights AS f
JOIN cities AS c2 ON f.destination_city_id != c2.c_id
JOIN cities AS c ON c.c_id = c.c_id
WHERE c.city_name = 'London'
AND c.c_id != c2.c_id
AND f.departure_city_id = c.c_id;
我原以为很容易改变它以获得我想要的东西。我想把第三行改成
JOIN cities AS c2 ON f.destination_city_id = c2.c_id
会成功的,但它没有。有什么帮助吗?