MySQL查询优化的5个实用技巧

2019-01-04 16:51:37王旭

5、优化UNION

在跨多个不同的数据库时使用UNION是一个有趣的优化方法,UNION从两个互不关联的表中返回数据,这就意味着不会出现重复的行,同时也必须对数据进行排序,我们知道排序是非常耗费资源的,特别是对大表的排序。

UNION ALL可以大大加快速度,如果你已经知道你的数据不会包括重复行,或者你不在乎是否会出现重复的行,在这两种情况下使用UNION ALL更适合。此外,还可以在应用程序逻辑中采用某些方法避免出现重复的行,这样UNION ALL和UNION返回的结果都是一样的,但UNION ALL不会进行排序。

小结

虽然本文列举的优化方法并不完全,但无论何时,只要可能,尽可能尝试不同的解决方案,查看查询计划,在大数据集上进行测试,并会定位结果基准点,观察在实际应用中的情况怎么样。同时,事先查看一下你的慢速查询日志,尽可能早地找出需要调整的查询。

希望本文所述对大家MySQL数据库程序设计有所帮助。

您可能感兴趣的文章:

MySQL查询优化之explain的深入解析mysql嵌套查询和联表查询优化方法MySQL查询优化:LIMIT 1避免全表扫描提高查询效率Mysql使用索引实现查询优化MySQL查询优化:连接查询排序limit(join、order by、limit语句)介绍mysql数据库查询优化 mysql效率MySQL查询优化:连接查询排序浅谈MySQL慢查询优化之慢查询日志分析的实例教程mysql limit查询优化分析php+mysql查询优化简单实例MySQL查询优化:用子查询代替非主键连接查询实例介绍浅谈MySQL中的子查询优化技巧MySQL查询优化--调整内部变量的详解美团网技术团队分享的MySQL索引及慢查询优化教程总结MySQL建表、查询优化的一些实用小技巧MySQL查询优化之索引的应用详解Mysql Limit 分页查询优化详解30个mysql千万级大数据SQL查询优化技巧详解