美文网首页
MySQL5.7性能优化(八)行构造函数表达式的范围优化

MySQL5.7性能优化(八)行构造函数表达式的范围优化

作者: Khan可汗 | 来源:发表于2019-03-13 21:50 被阅读0次

优化器能够将范围扫描访问方法应用于此表单的查询:

SELECT ... FROM t1 WHERE ( col_1, col_2 ) IN (( 'a', 'b' ), ( 'c', 'd' ));

以前,要使用范围扫描,必须将查询编写为一下的格式:

 SELECT ... FROM t1 WHERE ( col_1 = 'a' AND col_2 = 'b' )
OR ( col_1 = 'c' AND col_2 = 'd' );

为了让优化器使用范围扫描,查询必须满足以下条件:

  • 只能使用IN()进行断言,不能使用NOT IN()。
  • 在IN()断言的左侧,行构造函数只能包含列的引用。
  • 在IN()断言的右侧,行构造函数只能包含运行常量,这些常量是在执行期间绑定到常量的文本或本地列引用。
  • 在IN()断言的右侧,必须有多个行构造函数。
    有关优化程序和行构造函数的更多信息,参见后续文章“行构造函数表达式优化”

回到综述页

相关文章

  • MySQL5.7性能优化(八)行构造函数表达式的范围优化

    优化器能够将范围扫描访问方法应用于此表单的查询: 以前,要使用范围扫描,必须将查询编写为一下的格式: 为了让优化器...

  • 冷启动优化

    冷启动优化主要优化两个方面 Application 性能优化 App启动页性能优化业务优化不在本章优化范围内。本章...

  • Python性能优化:增大正则表达式编译缓存

    关键词:正则表达式 | 缓存 | 性能优化 Python 3 的re库中,对正则表达式的编译函数re.compil...

  • PHP性能优化02

    PHP语言级性能优化 优化点:尽可能减少使用魔法函数 情况描述:PHP提供的魔法函数,性能不佳 为什么性能低? 为...

  • 常用的后端性能优化六种方式:缓存化+服务化+异步化等

    性能优化专题 前端性能优化 数据库性能优化 jvm和多线程优化 架构层面优化 缓存性能优化 常用的后端性能优化六大...

  • Android性能优化 - 消除卡顿

    性能优化系列阅读 Android性能优化 性能优化 - 消除卡顿 性能优化 - 内存优化 性能分析工具 - Tra...

  • Android性能优化 - 内存优化

    性能优化系列阅读 Android性能优化 性能优化 - 消除卡顿 性能优化- 内存优化 性能分析工具 - Trac...

  • 前端性能优化(中)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(上)...

  • 前端性能优化(下)

    性能优化调研系列文章 《前端性能优化(上)》 《前端性能优化(中)》 《前端性能优化(下)》 《前端性能优化(中)...

  • Awesome Extra

    性能优化 性能优化模式 常见性能优化策略的总结 Spark 性能优化指南——基础篇 Spark 性能优化指南——高...

网友评论

      本文标题:MySQL5.7性能优化(八)行构造函数表达式的范围优化

      本文链接:https://www.haomeiwen.com/subject/qdbgeqtx.html