字段
------------------------
物品编号  品名  申请数量
0100100   三星   5
------------------------
我是将数据库中的相同“物品编号”的数据进行分组并将数量累加显示出来的。
select wpbh,sum (zksl) as zksl  from kcbgyp  group by wpbh
有相同“物品编号”但是分开储存的原因是“单价”不同。
我现在需要实现库存的“先入先出”,比如申请5个,我需要根据入库时间先后出库直到数量够5个,并且将每一条的物品ID写入库中作为唯一标识,应该怎么写?

解决方案 »

  1.   

    库存办公用品(KCBGYP)
    -------------
    ID(标识种子1)
    wpbh(物品编号)
    pm(品名)
    .
    .
    djhs(单价含税)
    zksl(在库数量)  
    rkrq(入库日期)
    --------------申请列表(SQ_LIST),记录用户申请物品的ID以及申请数量、单价等
    -----------------
    ID(与KCBGYP)关联
    WPBH(物品编号)
    DJH(单据号)
    .
    .
    SQRQ(申请日期)
    -----------------
      

  2.   

    insert into sq_list (id,wpbh,...,sqrq) (select top 5 id,wpbh,...,CONVERT (char(10), GETDATE(), 20) from kcbgyp order by rkrq)
      

  3.   

    是要根据申请列表的sum (zksl)数量,在库存办公用品表中根据rkrq(入库日期)倒序,读出需要哪些行,使sum (zksl)=zksl(在库数量)(行一) +zksl(在库数量) (行二)+……+zksl(在库数量) (行N)。用一个sql语句可能不行,用存储过程来实现需要。
      

  4.   

    insert into sq_list (id,wpbh,...,sqrq) (select top 5 id,wpbh,...,CONVERT (char(10), GETDATE(), 20) from kcbgyp order by rkrq having sum(zksl)>=5)
      

  5.   

    直接复制了,出了点错。试试这个。insert into sq_list (id,wpbh,...,sqrq) (select id,wpbh,...,CONVERT (char(10), GETDATE(), 20) from kcbgyp order by rkrq having sum(zksl)>=5)
      

  6.   

    楼主测试下吧。我凭想象写的。insert into sq_list (id,wpbh,...,sqrq) (select top 1 id,wpbh,...,CONVERT (char(10), GETDATE(), 20) from kcbgyp order by rkrq having sum(zksl)>=5)
      

  7.   

    http://community.csdn.net/Expert/topic/5045/5045049.xml?temp=.7106897
    借点人气 找人帮帮忙
      

  8.   

    在关键字 'order' 附近有语法错误??
    SQL我不是很懂
      

  9.   

    insert into sq_list (id,wpbh,...,sqrq) (select top 1 id,wpbh,...,CONVERT (char(10), GETDATE(), 20) from kcbgyp order by zksl having sum(zksl)>=5)改成如上就没错了。但这个不是lz要的功能吧
      

  10.   

    个人觉得需要用存储过来来做看有牛人用一个sql来搞定