日期 编号 仓库 数量
2012-05-31 C001 A店 136.00
2012-05-29 C001 A店 139.00
2012-05-29 C001 B店 5.00
2012-05-30 C001 B店 6.00
我只显示最大日期的记录,这个SQL怎么写呀?
即
日期 编号 仓库 数量
2012-05-31 C001 A店 136.00
2012-05-30 C001 B店 6.00
-
SQL code
-
select * from tb t where not exists ( select 1 from tb where 编号 = t.编号 and 仓库 = t.仓库 and 日期 > t.日期)
方法2:create table cangku ( F_RQ datetime, F_BH VARCHAR(20), F_SL FLOAT )
INSERT INTO cangku VALUES('2012-05-31','C001',343) INSERT INTO cangku VALUES('2012-05-30','C001',34) INSERT INTO cangku VALUES('2012-05-30','C002',33) INSERT INTO cangku VALUES('2012-05-26','C002',23)
SELECT * FROM cangku T,(SELECT F_BH,MAX(F_RQ) rq FROM cangku GROUP BY F_BH) t2 where t.F_BH=t2.F_BH and t.F_RQ>=t2.rq
方法3:更好理解:
select * from table a where a.date in (select max(b.date) from table b where b.id=a.id)