limit,offset导致的查询变慢情况
数据库情况:库中有120w条数据
下面进行查询
limit 0,10的时候发现只需要耗时1ms
limit 1170600,10 的时候发现耗时1.3s
为什么会导致这种结果?因为产生了回表操作
再来看一组情况
这里只对主键索引id进行查询,发现耗时819ms
如何优化select *这种情况?
做了子查询之后查询会变得更快,而且不会影响原来的结果展示
子查询中走了主键索引,并且只查询出了id,并不需要进行回表。
大大减少前面需要回表的时间
分析sql