VFP中SQL的select问题

《全国计算机等级考试二级教材——VisualFoxPro》(2008年版)中P135页例4.19(P133页例4.9类似)有题:求所有职工的工资都多于1210元的仓库的平... 《全国计算机等级考试二级教材——Visual FoxPro》(2008年版)中P135页例4.19(P133页例4.9类似)有题:求所有职工的工资都多于1210元的仓库的平均面积。
题解为select avg(面积) from 仓库 where 仓库号 not in;
(select 仓库号 from 职工 where 工资 <= 1210) and 仓库号 in;
(select 仓库号 from 职工)结果是350.因为用select avg (面积) from 仓库 where 仓库号 not in (select 仓库号 from 职工 where 工资<= 1210)的话结果运算356.67包含了尚没职工的WH4仓库。
问:为什么select avg (面积) from 仓库 where 仓库号 in (select 仓库号 from 职工 where 工资>1210)不对?这样应该更简单,而且也没包括WH4,但结果却是356.67。
其中:仓库表——仓库号:WH1、WH2、WH3、WH4。城市:北京、上海、广州、武汉。面积:370、500、200、400.职工表——仓库号:WH2、WH1、WH2、WH3、WH1。职工号:E1、E3、E4、E6、E7。工资:1220、1210、1250、1230、1250。
展开
 我来答
MuCloudLi
2010-02-09 · TA获得超过480个赞
知道小有建树答主
回答量:802
采纳率:0%
帮助的人:735万
展开全部
select avg(面积) from 仓库 where 仓库号 not in;
(select 仓库号 from 职工 where 工资 <= 1210) and 仓库号 in;
(select 仓库号 from 职工)
这句获得的结果是:(500(WH2)+200(WH3))/ 2 =350

select avg (面积) from 仓库 where 仓库号 in (select 仓库号 from 职工 where 工资>1210)
这句获得的结果是:
(370+500+200)/ 3 =356.67
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式