好像见过类似帖子,关于ERP进销存,你总得有个地方放期初数量吧,否则从哪取,应该还有个类似期初表的东西。

解决方案 »

  1.   

    不管如何,我是很喜歡LZ這樣,把測試語句都寫好的提問方式
    declare @b datetime ,@e datetime
    set @b='2008-1-1'
    set @e='2008-2-8'select 品名,仓库, 
    期初数量=isnull((select   top 1  结存数量 from test where 日期< @b  and 品名=A.品名 and 仓库=A.仓库 order by 日期 desc ),0),
    本期入库= sum(入库数量),
    本期出库= sum(出库数量),
    期末结存=isnull((select   top 1  结存数量 from test where 日期<= @e  and 品名=A.品名 and 仓库=A.仓库 order by 日期 desc ),0)
    from test as A
    where 日期 between @b and @e
    group by 品名,仓库
      

  2.   


    declare @b datetime ,@e datetime
    set @b='2008-1-1'
    set @e='2008-2-8'select 品名,仓库, 
    期初数量=isnull((select   top 1  期初数量 from test where 日期>= @b  and 品名=A.品名 and 仓库=A.仓库 order by 日期 ),0),
    本期入库= sum(入库数量),
    本期出库= sum(出库数量),
    期末结存=isnull((select   top 1  结存数量 from test where 日期<= @e  and 品名=A.品名 and 仓库=A.仓库 order by 日期 desc ),0)
    from test as A
    where 日期 between @b and @e
    group by 品名,仓库