![](/img/trans.png)
[英]How to join two tables where one column in one table refers to 3 columns in other table?
[英]How to join one column to two columns in other table
自上午 11 点以来一直困扰着我的 select 的问题非常棘手。 所以我的意思是,我有两个名为 Lotnisko 和 Loty ERD的表,如图所示。
这就是表格的外观:
Lotnisko 表示机场 /// Loty 表示航班 /// NumerLotu 是 FlightNumber /// MiejsceOdlotu 是出发地 /// MiejscePrzylotu 是到达地
我现在最好的 select 是这个表
select Loty.NumerLotu as [Numer Lotu], Lotnisko.Nazwa as [Miejsce Odlotu]
from Loty
JOIN Lotnisko on Loty.MiejsceOdlotu = Lotnisko.LotniskoID
where NumerLotu = 'KL1995'
select Loty.NumerLotu as [Numer Lotu], Lotnisko.Nazwa as [Miejsce Przylotu]
from Loty
JOIN Lotnisko on Loty.MiejscePrzylotu = Lotnisko.LotniskoID
where NumerLotu = 'KL1995'
这给了我这个结果:结果
我想要什么? 我想得到一个 select,我得到的最好的一个是:
select Loty.NumerLotu as [Numer Lotu], Lotnisko.Nazwa as [Miejsce Odlotu], Lotnisko.Nazwa as [Miejsce Przylotu]
from Loty
JOIN Lotnisko on Loty.MiejsceOdlotu = Lotnisko.LotniskoID
JOIN Lotnisko przylot on Loty.MiejscePrzylotu = przylot.LotniskoID
where NumerLotu = 'KL1995'
这是结果: Result2
我想在 output 中有这个:
数莲花 | 米耶斯·奥德洛图 | Miejsce Przylotu |
---|---|---|
KL1995 | 港口lotniczy 阿姆斯特丹-史基浦 | 港口lotniczy Kraków-Balice |
将您的查询更改为:
select
t1.NumerLotu as [Numer Lotu],
t1.Miejsce_Odlotu as [Miejsce Odlotu],
t2.Miejsce_Przylotu as [Miejsce Przylotu]
from
(select Loty.NumerLotu as Numer_Lotu, Lotnisko.Nazwa as Miejsce_Odlotu
from Loty
JOIN Lotnisko on Loty.MiejsceOdlotu = Lotnisko.LotniskoID
where NumerLotu = 'KL1995') t1
join
(select Loty.NumerLotu as Numer_Lotu, Lotnisko.Nazwa as Miejsce_Przylotu
from Loty
JOIN Lotnisko on Loty.MiejscePrzylotu = Lotnisko.LotniskoID
where NumerLotu = 'KL1995') t2
on t1.Numer_Lotu = t2.Numer_Lotu
这是相当简单的。 只需在连接中使用(可选) AS
关键字,并参考SELECT
中的表格。
SELECT
t1.Numer_Lotu AS "Numer Lotu",
t1.Miejsce_Odlotu AS "Miejsce Odlotu",
t2.Miejsce_Przylotu AS "Miejsce Przylotu"
FROM Loty
INNER JOIN Lotnisko AS t1
ON Loty.MiejsceOdlotu = t1.LotniskoID
INNER JOIN Lotnisko AS t2
ON Loty.MiejscePrzylotu = t2.LotniskoID
WHERE NumerLotu = 'KL1995'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.