mysql获取最新的分组数据的第一个id

本文介绍了如何在MySQL中查询每个客户在八月份的首次跟进记录。通过三种不同的SQL方法,包括分组并按ID排序、查询每个分组的最小ID以及使用连接查询来实现。虽然所有方法得到的结果相同,但第三种方法在效率上最优,而第一种方法则更易于理解。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

根据记录表中 获取客户第一次跟进的信息

客户跟进有多个时间段跟进,获取八月份第一次跟进的客户

重复的客户id 需要分组

三种sql方法

select * from (select * from anxu_follow group by anxu_id ORDER BY id asc limit 10000) a where  create_time>='2021-08-01' GROUP BY anxu_id ORDER BY create_time ASC;

 先对记录表分组 并且进行id顺序排,依据mysql版本的问题 大于limit就不准确了

SELECT * from anxu_follow where id in(SELECT min(id) from anxu_follow group by anxu_id ORDER BY id asc) and  create_time>='2021-08-01' GROUP BY anxu_id ORDER BY create_time ASC ;

依据分组 查询id的最小值记录 获取id 并根据id 获取

SELECT * from  anxu_follow td join(select min(id) id from anxu_follow GROUP BY anxu_id ORDER BY id asc) md where td.id=md.id and create_time>='2021-08-01' GROUP BY td.anxu_id ORDER BY td.create_time ASC ;

链表查询 进行分组确认值

三种获取的结果是一样的,但是第三种速度是最快的,第一种看着更通俗易懂

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值