[英]Get two tables from same table SQL
我有两张桌子
城市:
id name
------------
1 Helsinki
2 Tukholma
3 Oslo
4 Turku
航班
id where_id to_id
---------------------
1 1 2
2 1 3
3 2 3
4 2 4
我想得到这个结果
Helsinki Tukholma
Helsinki Oslo
Tukholma Oslo
Tukholma Turku
如何编写查询? 结果有两个名称列,我无法绕过它?
您可以加入两次:
select c1.name where_city, c2.name to_city
from flights f
inner join cities c1 on c1.id = f.where_id
inner join cities c2 on c2.id = f.to_id
你需要两个连接:
select f.*, cw.name, ct.name
from flights f join
cities cw
on f.where_id = cw.id join
cities ct
on f.to_id = ct.id;
我找到了这个解决方案。 很清楚。 没有 JOIN
SELECT A.name, B.name FROM cities A, cities B, flights F WHERE F.where_id=A.id AND L.to_id=B.id;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.