您的位置:首页 > 数据库

sql 查询相同记录下日期最大的 一条

2012-07-06 13:18 288 查看
日期 编号 仓库 数量

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)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: