[置顶] 【mysql 性能优化篇】优化子查询
2017-12-05 10:17
363 查看
一、mysql子查询原理:
MYSQL从4.1版体开始支持子查询,使用子查询可以进行 SELECT语句的嵌套查询,即一个
SELECT查询的结果作为另一个 SELECT语句的条件。子查询可以一次性完成很多逻辑上需要多
个步骤才能完成的SQL操作。子查询虽然可以使查询语句很灵活,但执行效率不高。执行子查询时, MYSQL需要为内层查询语句的查询结果建立一个临时表。然后外层查询语句从临时表中查询记录。查询完毕后,再撤销这些临时表。因此,子查询的速度会受到一定的影响。如果查询的数据量比较大,这种影响就会随之增大。
二、mysql 子查询优化
在 MYSQL中,可以使用连接(JOIN)查询来替代子查询。连接查询不需要建立临时表,其
速度比子查询要快,如果查询中使用索引的话,性能会更好。连接之所以更有效率,是因为 MYSQL
不需要在内存中创建临时表来完成查询工作。
MYSQL从4.1版体开始支持子查询,使用子查询可以进行 SELECT语句的嵌套查询,即一个
SELECT查询的结果作为另一个 SELECT语句的条件。子查询可以一次性完成很多逻辑上需要多
个步骤才能完成的SQL操作。子查询虽然可以使查询语句很灵活,但执行效率不高。执行子查询时, MYSQL需要为内层查询语句的查询结果建立一个临时表。然后外层查询语句从临时表中查询记录。查询完毕后,再撤销这些临时表。因此,子查询的速度会受到一定的影响。如果查询的数据量比较大,这种影响就会随之增大。
二、mysql 子查询优化
在 MYSQL中,可以使用连接(JOIN)查询来替代子查询。连接查询不需要建立临时表,其
速度比子查询要快,如果查询中使用索引的话,性能会更好。连接之所以更有效率,是因为 MYSQL
不需要在内存中创建临时表来完成查询工作。
相关文章推荐
- [置顶] 【mysql 性能优化篇】优化数据库结构
- [置顶] 【mysql 性能优化篇】优化MySQL服务器
- MySQL查询的性能优化 – 查询缓冲提高查询速度
- [转]mysql性能优化-慢查询分析、优化索引和配置
- MySQL性能优化[准备篇]-慢查询日志
- 高性能Mysql第三版(第六章查询性能优化)
- mysql性能优化-慢查询分析、优化索引和配置
- MySQL查询性能优化
- [置顶] 【mysql 性能优化】避免临时表
- mysql查询性能优化
- mysql性能优化-慢查询分析、优化索引和配置
- mysql性能优化-慢查询分析、优化索引和配置
- mysql性能优化-慢查询分析、优化索引和配置
- MySql学习(七) —— 查询性能优化 深入理解MySql如何执行查询
- mysql性能优化-慢查询分析、优化索引和配置
- mysql查询时,offset过大影响性能的原因与优化方法
- mysql性能优化-慢查询分析、优化索引和配置
- mysql查询参数配置及优化性能
- mysql性能优化-慢查询分析、优化索引和配置
- MySQL查询的性能优化