tSellersとtBuyersの2つのテーブルがあります。それらは両方ともテーブルtCityへのFKを持っています。注文テーブルで買い手と売り手から都市名を結合して選択するにはどうすればよいですか?
tOrder tSeller tBuyer tCity
orderID sellerID buyerID cityID
sellerID cityID cityID name
buyerID
select o.orderID, c.name as buyerCity, c.name as sellerCity
from tOrder o
join tSeller s on s.sellerID = o.sellerID
join tBuyer b on b.buyerID = o.buyerID
join tCity c on c.cityID = ??
期待される出力:
orderID buyerCity sellerCity
1 London Paris
@jarlhのコメントを拡張するには:
Cityテーブルに2回参加する例。1回は売り手(売り手の都市を取得するため)、もう1回は買い手(買い手の都市を取得するため)です。
select o.orderID, buyerCity.name as BuyerCity, sellerCity.name as SellerCity
from tOrder o
join tSeller s on s.sellerID = o.sellerID
join tBuyer b on b.buyerID = o.buyerID
join tCity sellerCity on s.cityID = sellerCity.cityID
join tCity buyerCity on b.cityID = buyerCity.cityID
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加