資料庫的 子查詢和 NOT EXISTS 關念求教 - 考試
By Bethany
at 2014-03-09T15:39
at 2014-03-09T15:39
Table of Contents
各位好, 小弟想請教一下各位
有關於子查詢中的 EXISTS 和 NOT EXISTS 的關念
底下的題目出自於唐箏資料庫應用第二回 P91頁
小弟雖然有講義, 但是沒有DVD, 所以是自己從文字中去理解
但是還是有些疑惑在, 所以麻煩各位指點一下
1.題目:列出所有不供應零件 P1 的供應商名稱
SELECT 供應商名稱
FROM 供應商
WHERE NOT EXISTS
(
SELECT *
FROM 專案供應零件
WHERE
供應商.供應商代號 = 專案供應零件.供應商代號 AND
零件代號 = 'P1'
)
這題小弟的理解,
先用子查詢, 找出所有有供應P1零件的供應商
在透過外面的 NOT EXIST 去找出 不供應零件P1 的供應商
舉例:
供應商中有 R1 = ( A, B, C, D, E),
供應 P1 零件的供應商有 R2 = (A, B, D)
不供應P1的零件商就是, C 和 E
R1 - R2 = ( C, E )
題目: 列出參與所有專案的供應商名稱
SELECT 供應商名稱
FROM 供應商
WHERE NOT EXISTS
(
SELECT *
FROM 專案
WHERE NOT EXISTS
(
SELECT *
FROM 專案供應零件
WHERE
供應商.供應商代號 = 專案供應零件.供應商代號 AND
專案.專案代號 = 專案供應零件.專案代號
)
)
這題小弟覺得連從題目變成這樣解的概念都沒有
不曉得是不是哪裡沒念到
麻煩各位了
謝謝
--
有關於子查詢中的 EXISTS 和 NOT EXISTS 的關念
底下的題目出自於唐箏資料庫應用第二回 P91頁
小弟雖然有講義, 但是沒有DVD, 所以是自己從文字中去理解
但是還是有些疑惑在, 所以麻煩各位指點一下
1.題目:列出所有不供應零件 P1 的供應商名稱
SELECT 供應商名稱
FROM 供應商
WHERE NOT EXISTS
(
SELECT *
FROM 專案供應零件
WHERE
供應商.供應商代號 = 專案供應零件.供應商代號 AND
零件代號 = 'P1'
)
這題小弟的理解,
先用子查詢, 找出所有有供應P1零件的供應商
在透過外面的 NOT EXIST 去找出 不供應零件P1 的供應商
舉例:
供應商中有 R1 = ( A, B, C, D, E),
供應 P1 零件的供應商有 R2 = (A, B, D)
不供應P1的零件商就是, C 和 E
R1 - R2 = ( C, E )
題目: 列出參與所有專案的供應商名稱
SELECT 供應商名稱
FROM 供應商
WHERE NOT EXISTS
(
SELECT *
FROM 專案
WHERE NOT EXISTS
(
SELECT *
FROM 專案供應零件
WHERE
供應商.供應商代號 = 專案供應零件.供應商代號 AND
專案.專案代號 = 專案供應零件.專案代號
)
)
這題小弟覺得連從題目變成這樣解的概念都沒有
不曉得是不是哪裡沒念到
麻煩各位了
謝謝
--
Tags:
考試
All Comments
By Donna
at 2014-03-09T21:00
at 2014-03-09T21:00
By Yedda
at 2014-03-11T11:55
at 2014-03-11T11:55
By Hedda
at 2014-03-13T14:27
at 2014-03-13T14:27
By Anthony
at 2014-03-18T11:47
at 2014-03-18T11:47
By Irma
at 2014-03-20T19:49
at 2014-03-20T19:49
By Liam
at 2014-03-21T03:37
at 2014-03-21T03:37
Related Posts
徵求郝強中會函授
By Hedwig
at 2014-03-09T15:31
at 2014-03-09T15:31
難道各位前輩都不覺得志光的教室很髒?
By Jake
at 2014-03-09T15:14
at 2014-03-09T15:14
電力系統老師比較
By Jake
at 2014-03-09T14:55
at 2014-03-09T14:55
電機機械老師比較
By Regina
at 2014-03-09T14:51
at 2014-03-09T14:51
錄事書單(民訴與刑訴)
By Lily
at 2014-03-09T14:19
at 2014-03-09T14:19