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

日期 编号 仓库 数量
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)

 

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值