Re: [課業] 資料庫的 子查詢和 NOT EXISTS 關念求教
用原po第一題習慣的方式來看的話
假設有供應商A,B,C,D
專案1,2,3
A沒有任何專案
B有1號專案 簡寫為B1
C有1,2號專案 簡寫為C1,C2
D有全部專案 簡寫為D1,D2,D3
下面以(一)(二)(三)的順序來看
不知道有沒有表達錯誤的地方
請見諒
: 題目: 列出參與所有專案的供應商名稱
: SELECT 供應商名稱
(三)^^^^^這裡是所有供應商中 沒有出現在(二)中的 所以是ABCD-ABC=D
: FROM 供應商
: WHERE NOT EXISTS
: (
: SELECT *
(二)^^^^^^這裡是取所有供應商與專案的排列組合減去(一)中列出的組合
也就是 {A1~D3} -{B1,C1,C2,D1,D2,D3} = {A1,A2,A3,B2,B3,C3}
: FROM 專案
: WHERE NOT EXISTS
: (
: SELECT *
(一)^^^^^^^^這裡查出了 B1,C1,C2,D1,D2,D3
: FROM 專案供應零件
: WHERE
: 供應商.供應商代號 = 專案供應零件.供應商代號 AND
: 專案.專案代號 = 專案供應零件.專案代號
: )
: )
: 這題小弟覺得連從題目變成這樣解的概念都沒有
: 不曉得是不是哪裡沒念到
: 麻煩各位了
: 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.47.219.78
推
03/10 04:16, , 1F
03/10 04:16, 1F
討論串 (同標題文章)