102年高考-資料庫SQL解答

已知有一手機製造公司資料庫綱目(database schema)如下:

工程師(編號,名字,年齡,性別,薪水)
產品(代號,名目,年銷售量,售價)
設計(編號,代號)



請用SQL回答下列問題:
(一)列出公司所有男工程師的平均薪水。(5分)
(二)對於沒有參與任何一項產品設計的工程師,或者所參與設計的產品年銷售量低於1萬隻的,列出這些工程師的名字和年齡。(10分)
(三)針對年銷售量高於20萬隻的每一項產品,且參與設計此產品的工程師數目不超過5人的,列出其產品名目和工程師的平均薪水。(10分)


SQL解答

(一) 難度:一顆心

SELECT AVG(薪水)
FROM    工程師
WHERE 性別='男'


(二)  難度:三顆心

SELECT 名字,年齡 
FROM 工程師 E
WHERE NOT EXISTS (

      SELECT *
      FROM 產品 P, 設計 D
      WHERE E.EID = D.EID
      AND P.PID = D.PID
      AND Sell >=10000
)

這題經過實際SQL驗證100%正確!! 




(三)  難度:三顆心


SELECT  名目,AVG(薪水)
FROM 工程師 E,產品 P,設計 D
WHERE  E.編號=D.編號 AND
              P.代號=D.代號  AND
              年銷售量>200000
GROUP BY  代號
HAVING COUNT(*) < 5















留言

這個網誌中的熱門文章

數位信封 Digital Envelope

SSL的運作原理