Foxtable(狐表)用户栏目专家坐堂 → 请教下两段SQL语句


  共有2913人关注过本帖树形打印复制链接

主题:请教下两段SQL语句

帅哥哟,离线,有人找我吗?
rjh4078
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3355 积分:24732 威望:0 精华:0 注册:2012/3/26 21:47:00
请教下两段SQL语句  发帖心情 Post By:2014/3/28 9:58:00 [只看该作者]

我写了两段SQL语句

第一个:select Distinct 产品编号,产品名称,isnull(期初库存,0) as 期初库存,isnull((select sum(本次入库数量) from {生产入库单明细} b where a.产品编号=b.产品编号),0) as 累计入库 ,isnull((select sum(本次发货数量) from {销售发货单明细} b where a.产品编号=b.产品编号 ),0) as 累计出库,期初库存+累计入库-累计出库 as 可用库存 from {产品资料} a

执行的时候提示 列 累计入库 累计出库 无效

 

 

改成第二个:

 

select Distinct 产品编号,产品名称,isnull(期初库存,0) as 期初库存,isnull((select sum(本次入库数量) from {生产入库单明细} b where a.产品编号=b.产品编号),0) as 累计入库 ,isnull((select sum(本次发货数量) from {销售发货单明细} b where a.产品编号=b.产品编号 ),0) as 累计出库,isnull(期初库存,0)+isnull((select sum(本次入库数量) from {生产入库单明细} b where a.产品编号=b.产品编号),0)-isnull((select sum(本次发货数量) from {销售发货单明细} b where a.产品编号=b.产品编号 ),0) as 可用库存 from {产品资料} a

 

这个执行没有问题

我平时FILL的时候 都是直接用第一种方法中的(期初库存+累计入库-累计出库 as 可用库存)这种写法 没有发现问题啊 比较了下不同 就是FILL的时候 没有嵌套这么多SELECT语句  难道有什么讲究?

请教下大师给个指点

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1731 积分:11255 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2014/3/28 12:24:00 [只看该作者]

期初库存+累计入库-累计出库 as 可用库存

后面的别名还没有生成,两者是并列的,改成
select 产品编号,产品名称,期初库存,累计入库 ,累计出库 ,期初库存+累计入库-累计出库 as 可用库存 
from (
select Distinct 产品编号,产品名称,isnull(期初库存,0) as 期初库存,isnull((select sum(本次入库数量) from {生产入库单明细} b where a.产品编号=b.产品编号),0) as 累计入库 ,isnull((select sum(本次发货数量) from {销售发货单明细} b where a.产品编号=b.产品编号 ),0) as 累计出库 from {产品资料} a) as b

 回到顶部
帅哥哟,离线,有人找我吗?
rjh4078
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐精 帖子:3355 积分:24732 威望:0 精华:0 注册:2012/3/26 21:47:00
  发帖心情 Post By:2014/3/28 16:55:00 [只看该作者]

原来这样 谢了

 回到顶部