介绍
默认情况,分组后取的是第一条数据,有时候我们希望取最后一条数据
方法
max函数
分组的时候使用max函数获取最大的id,然后再in这个id获取记录。.
select * from erp_user_money where id IN
(select max(id) from erp_user_money where 1 group by user_id);
或者
select * from erp_user_money a where id =
(select max(id) from erp_user_money b where a.user_id = b.user_id);
使用not exists
这个方法速度比较块
select * from erp_user_money a where not exist
(select 1 from erp_user_money b where a.user_id = b.user_id and a.id < b.id);