簡體   English   中英

如何將一列連接到另一個表中的兩列

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM