SQL 优化 - 分治思想

用户头像
墨凡
关注
发布于: 2020 年 10 月 24 日
SQL优化-分治思想

优化之前:

  1. 功能开发前,先从数据入手。当数据结构已知,SQL可以尝试性预先设计和测试。对性能也有一个整体把握。

  2. SQL的书写常常遇到性能较差的关联查询,主表关扩展表。如果条件同时跨越两个表以上,常常性能不理想。

思路:

  1. 将两张表需要放在where条件中的字段梳理清楚,比如where表A.xxx Or 表B.xxx的查询。可以拆分成两个 select 查询,分别将表A、B作为主表,再使用 union 链接两个查询的结果。效果就等同于 select A join B。而性能却能大幅提升。

  2. 亲测在mysql 5.6中可用。其他对于关联查询性能很差的,同样可以拆分条件,再union合并数据,进行尝试。

总结:

分治思想,把一个整体的较慢任务进行拆分成快速的有限子任务,在程序的一些场景应用,性能提升明显。

发布于: 2020 年 10 月 24 日 阅读数: 13
用户头像

墨凡

关注

文字,是一种表达方式 2017.12.22 加入

90后程序员,对代码有追求,对人生有态度

评论

发布
暂无评论
SQL优化-分治思想