常用SQL笔记MySQL
2025-04-08 23:49阅读:33评论:0
MySQL之去重查询最新一条数据
这种查询会导致全表扫描 优化版
- 这种查询会导致全表扫描
1
2
3
4
select id,name,create_date from sys_user a where not exists (select * from sys_user b where a.name = b.name and a.create_date < create_date ) ; - 优化版
1
2
3
4
5
6
7
8
9
10
11
SELECT * FROM hy_driver_on_line_the_way WHERE create_time in( SELECT MAX( b.create_time ) FROM hy_driver_on_line_the_way AS b WHERE b.driver_id IN ( 1, 2, 3 ) GROUP BY b.driver_id)