关于计算先进先出库存成本问题
请教各位大虾,我有一个明细表mingx 
 id                        商品代码                     数量                        价格                           日期                           类别 
 1                              001                                    10                                 8                        2007-03-01               采购 
 2                              001                                       8                              12                        2007-03-10               采购 
 3                              001                                    12                                 6                        2007-04-15               采购 
 4                              002                                       5                              10                        2007-04-02               采购 
 5                              001                                       2                              16                        2007-04-05               销售 
 6                              001                                    18                              16                        2007-04-20               销售 
 7                              001                                       5                              16                        2007-05-20               销售 
 我的目的是按照先进先出方法统截止某个日期的库存成本.比如到2007-05-20时,001卖出25个,剩下库存成本应为5*6元=30,002没卖出去,应是5*10=50,请问各位大虾怎么写sql语句或存储过程,急
------解决方案--------------------declare @t table(id int,商品代码 varchar(4),数量 int,价格 int,日期 datetime,类别 varchar(8)) 
 insert into @t select  
 1,           '001 ',            10,           8,         '2007-03-01 ',      '采购 ' union all select  
 2,           '001 ',             8,          12,         '2007-03-10 ',      '采购 ' union all select  
 3,           '001 ',            12,           6,         '2007-04-15 ',      '采购 ' union all select  
 4,           '002 ',             5,          10,         '2007-04-02 ',      '采购 ' union all select  
 5,           '00