我试图写一个查询,确定哪些城市我不能直接从一个城市飞往伦敦。鉴于模式:试图找到所有没有直飞城市的城市(PostgreSQL)
城市:
| 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
会做的伎俩,但事实并非如此。任何帮助?