第二小问,检索上海市所有商场中各种商品的平均销售量不应该是M这个表city吗,怎么回事P这个表的city,答案是不是错了
应该是错了,p的city查询的是产地是上海的产品,而不是上海市所有商场中各种商品,上海市所有商场应该使用M表的city,可以使用in 理解起来简单点,关联表再分组也行
select s.pno, avg(s.QTY)
from s
where s.MNO in (select M.MNO from m where m.city = '上海')
group by s.pno;
在进行多表联查的时候,如果city没有给定值,那么就会报错,并没有说是p.city啊,
这是sql92写法,一种很老的写法了
但是答案如果更加准确的话,是应该填成m.city