[英]SQL query issue for a many to many relationship
我具有以下表結構:
桌上Sailor
:
sid sname
-------------------
22 Dustin
29 Brutus
31 Luber
32 John
桌Boat
:
bid bname
-------------------
101 Pirate
102 Pirate
103 Marine
餐桌Reserve
:
bid sid day
------------------------------
101 22 10/10/98
102 22 10/10/98
103 22 10/8/98
103 31 10/7/98
102 29 9/8/98
103 32 9/8/98
預期結果是:查找保留了所有名為Pirate
船的所有水手的名字。
基本上,我需要查詢所有保留了名為Pirate
船的水手名稱。
唯一的問題是在桌船中,我有2列,其bname為Pirate,並且它們的出價不同。
知道如何通過查詢實現嗎?
如果我理解正確,那么您正在尋找連接操作:
SELECT S.* FROM Sailor S JOIN Res R ON S.sid = R.sid
JOIN Boat B on R.bid = B.bid where B.bname = 'Pirate'
希望能幫助到你
順便說一句,您的日期不明確。 請使用YYYY-MM-DD(或YYYYMMDD)格式。
無論如何,這是一種方法:
select b.bid,b.bname,s.sid,s.sname,r.day
from Boat b join Reserve r on b.bid = r.bid
join Sailor s on r.sid = s.sid
where b.bname = 'Pirate';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.