资讯处理 数据库应用 102年 第四题
4. 已知有一手机制造公司数据库纲目如下:
工程师(编号,名字,年龄,性别,薪水)
产品(代号,名目,年销量,售价)
设计(编号,代号)
请用SQL回答下列问题:
(三)针对年销售量高于20万只的每一项产品,
且参与设计此产品的工程师数目不超过5人的,
列出其产品名目和工程师的平均薪水。
Ans:
(三)
(高上解答)
SELECT 名目,AVG(薪水)
FROM 产品,工程师,设计
WHERE 产品.代号=设计.代号
AND 设计.编号=工程师.编号
AND 产品.年销售量>200000
GROUP BY 名目
HAVING COUNT(工程师.编号) <= 5
(我的疑问是)
如果GROUP BY用名目的话,这样一旦代号不同而名目相同,就会一起计算。
这样结果不就跟题目所要求的不一样。
所以这里GROUP BY,是不是应该用 GROUP BY 产品.代号?
请版上强者为我解惑 感恩