看板 Database 關於我們 聯絡資訊
※ 引述《Antzzz (減肥中請勿餵食)》之銘言: : ※ 引述《wskevin (kevin)》之銘言: : : 其表格schema為: : : Member(MID,Password,Mname,Grade,Tel,Address) : : Song(SID,SName,Singer) : : MemberSong(MID,SID) : : SQL指令如下: : : SELECT * : : FROM Song : : WHERE NOT EXISTS( : : SELECT * : : FROM Member : : WHERE NOT EXISTS( : : SELECT * : : FROM MemberSong : : WHERE Song.SID=MemberSong.SID AND Member.MID=MemberSong.MID) : : ) : : ) : : 小弟我是初學者, : : 如果是一個子查詢,還可以大慨知道是什麼意思, : : 可是兩個子查詢,想破頭還是看不懂, : : 有沒有版上的高手可以指點一下,感激不盡, : : 謝謝~~~ : 選出對應到全部的Member的Song : 也就是說 : 假設Member有A、B、C : Song有01、02 : 01對應到A、B、C : 02對應到A而已 : 則選出Song 01 : 但如果今天又insert了一個新的Member D : 則全部的song都不會被選到,因為沒有Song對應到這個Member : 然後再insert Song 01對應到D的關係到MemberSong對應表的話 : Song 01又會被選出來 : 其實自己填資料測最容易懂 請問兩個not exist 如何達到上述效果 感覺邏輯不是SELECT * FROM Song 中選到的資料 一筆一筆帶入第一個 not exist 但一個 not exist 下還有一個 not exist 所以把一筆 SELECT * FROM Song 中選到的資料與一筆SELECT * FROM Member 中選到的資料帶入循環帶入確定 都沒有? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 36.224.119.142