mysql大数据量查询优化

1
SELECT a.* FROM1 a,(select id from1 where 条件 LIMIT 1000000,20) b where a.id = b.id;

原理:1、减少回表操作;2、可参考《阿里巴巴Java开发手册(泰山版)》第五章-MySQL数据库、(二)索引规约、第7条:【推荐】利用延迟关联或者子查询优化超多分页场景。说明:MySQL并不是挑过offeset行,而是取offset+N行,然后返回放弃前offset行,返回N行,那当offset特别大的时候,效率就非常的底下,要么控制返回的总页数,要么对超过特定阈值的页数进行SQL改写。

先通过查找符合条件的主键id,再通过id去查找所有信息会快很多

赏个🍗吧
0%