SQL版本 5.7
有一张流水表,未分库分表,目前的数据量为950w,分页查询使用到了limit,优化之前的查询耗时167s左右 (execution: 16s831ms, fetching: 107 ms)
按照下文的方式调整SQL后,耗时347ms (execution: 163 ms, fetching: 184 ms);优化前的SQL类似这样:
-- 优化前SQL SELECT 各种字段 FROM `table_name` WHERE 各种条件 LIMIT 0,10;
--优化后 SELECT * FROM `table_name` a RIGHT JOIN ( SELECT id FROM `table_name` where 条件 LIMIT 0,1000000 ) temp_table ON temp_table.id = a.id