数据量大的表,查寻方式优化,提升查寻效率
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据量大的表,查寻方式优化,提升查寻效率相关的知识,希望对你有一定的参考价值。
有一张财务流水表,未分库分表,目前的数据量为9555695,分页查询使用到了limit,优化之前的查询耗时16 s 938 ms (execution: 16 s 831 ms, fetching: 107 ms),按照下文的方式调整SQL后,耗时347 ms (execution: 163 ms, fetching: 184 ms);
操作:查询条件放到子查询中,子查询只查主键ID,然后使用子查询中确定的主键关联查询其他的属性字段;
原理:减少回表操作;
-- 优化前SQL SELECT 各种字段 FROM `table_name` WHERE 各种条件 LIMIT 0,10;
-- 优化后SQL SELECT 各种字段 FROM `table_name` main_tale RIGHT JOIN ( SELECT 子查询只查主键 FROM `table_name` WHERE 各种条件 LIMIT 0,10; ) temp_table ON temp_table.主键 = main_table.主键
原文地址:https://mp.weixin.qq.com/s/eic4hb9aK5qhcbcb2GtaZw
原文是技术主管发到群里面分享的,是个我很敬佩的技术大佬,希望有朝一日和他一样~
以上是关于数据量大的表,查寻方式优化,提升查寻效率的主要内容,如果未能解决你的问题,请参考以下文章