0
点赞
收藏
分享

微信扫一扫

分页sql语句优化

芝婵 2023-02-03 阅读 62

MySQL的limit工作原理就是先读取n条记录,然后抛弃前n条,读m条想要的,所以n越大,性能会越差。

一般的分页做法,测试耗时 10.961s

 

  1. ​SELECT *5000000,10​

优化后,测试耗时 1.943s

 

  1. ​SELECT *(SELECT fid FROM t_history_data LIMIT 5000000,10)(fid)​

优化前的SQL需要更多I/O浪费,因为先读索引,再读数据,然后抛弃无需的行。而优化后的SQL(子查询那条)只读索引(Cover index)就可以了,然后通过member_id读取需要的列



举报

相关推荐

0 条评论