create table 入库单表
(单号 varchar(20),日期 varchar(20))insert into 入库单表
 select '1000081','20140101' union all
 select '1000082','20150101' union all
 select '600083','20150201' union all
 select '3000001','20131201'create table 入库明细表
(单号 varchar(20),商品编号 varchar(10),品名 varchar(20),进价 decimal(5,1))insert into 入库明细表
 select '1000081','1001','商品A',1.5 union all
 select '1000081','1007','商品B',2.5 union all
 select '1000082','1001','商品A',3.0 union all
 select '600083','1007','商品B',3.5 union all
 select '3000001','7725','商品C',100
select y.单号,y.日期,x.商品编号,x.品名,x.进价
 from 入库明细表 x
 inner join 入库单表 y on x.单号=y.单号
 inner join
 (select max(b.日期) '日期',a.商品编号,a.品名 
  from 入库明细表 a
  inner join 入库单表 b on a.单号=b.单号
  group by a.商品编号,a.品名) z on y.日期=z.日期 and x.商品编号=z.商品编号 and x.品名=z.品名
 
/*
单号                   日期                   商品编号       品名                   进价
-------------------- -------------------- ---------- -------------------- ------------
1000082              20150101             1001       商品A                  3.0
600083               20150201             1007       商品B                  3.5
3000001              20131201             7725       商品C                  100.0(3 row(s) affected)
*/

解决方案 »

  1.   

    SELECT T1.单号,T1.日期,T2.商品编号,T2.品名,T2.进价
    FROM 入库单表 T1
    JOIN 入库明细表 T2 ON T1.单号=T2.单号
    WHERE NOT EXISTS(
    SELECT 1 FROM 入库单表 T3
    JOIN 入库明细表 T4 ON T3.单号=T4.单号
    WHERE T4.商品编号=T2.商品编号 AND T1.单号<>T3.单号
    AND T1.日期<T3.日期)
      

  2.   

     ;With Cte As
     (
     Select y.单号,y.日期,x.商品编号, x.品名,x.进价, Row_Number() Over (Partition by x.商品编号 Order By y.日期 Desc) Seq
     From 入库明细表 x Join 入库单表 y On x.单号=y.单号
    )
    Select 单号,日期,商品编号,品名,进价 From Cte Where Seq=1结果
    单号                   日期                   商品编号       品名                   进价
    -------------------- -------------------- ---------- -------------------- ---------------------------------------
    1000082              20150101             1001       商品A                  3.0
    600083               20150201             1007       商品B                  3.5
    3000001              20131201             7725       商品C                  100.0(3 行受影响)