我写了两段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语句 难道有什么讲究?
请教下大师给个指点