[請問] 資料庫SQL not exists雙重否定

作者: ko74652 (Reese lin)   2014-08-18 21:47:40
想請問一下 雙重否定 使用在 找出參與所有專案的員工姓名
有三張表格
員工 E 專案 P 員工參與專案 W
select E.name
from E
where not exists(
select *
from P
where not exists
(select *
from W
where E.no=W.eno and P.no=W.pno)
我想問一下這題的想法 最裡面那層投影出來的會是三張表格串在一起
那到了中間層 (1)要做select的想法是不是
我所有的project去和最裡層串出來的表做比較
如果這個表裡面 只要有員工沒有參與project裡的所有專案
就會被篩選出來 對嗎
(2)篩選出來之後 再到最外層 最後一次篩選
是不是 拿員工的表 去跟 裡面的做比對
只要比對不到的就是答案 是嗎
(3)還有我想問一下 篩選是拿各張表的no去 比對 對吧?
謝謝回答 我這問題想好久了...

Links booklink

Contact Us: admin [ a t ] ucptt.com