MySQL的执行原理之查询重写规则(一)
创始人
2024-12-17 04:05:30
0

对于一些执行起来十分耗费性能的语句,MySQL还是依据一些规则,竭尽全力的把这个很糟糕的语句转换成某种可以比较高效执行的形式,这个过程也可以被称作查询重写。

1.条件化简

我们编写的查询语句的搜索条件本质上是一个表达式,这些表达式可能比较繁杂,或者不能高效的执行,MySQL的查询优化器会为我们简化这些表达式。

1.1.移除不必要的括号

有时候表达式里有许多无用的括号,比如这样:

((a = 5 AND b =c) OR ((a > c) AND (c < 5)))

看着就很烦,优化器会把那些用不到的括号给干掉,就是这样:

(a = 5 and b =c) OR (a > c AND c < 5)
1.2.常量传递(constant_propagation)

有时候某个表达式是某个列和某个常量做等值匹配,比如这样:

a = 5

当这个表达式和其他涉及列a的表达式使用AND连接起来时,可以将其他表达式中的a的值替换为5,比如这样:

a = 5 AND b >a

就可以被转换为:

a = 5 AND b >5

等值传递(equality_propagation)

有时候多个列之间存在等值匹配的关系,比如这样:

a = b and b = c and c = 5

这个表达式可以被简化为:

                
            

相关内容

热门资讯

透视技法!wepoker免费脚... 透视技法!wepoker免费脚本咨询,wepokerplus外挂(脚本)解迷教程(都是存在有挂)-哔...
受玩家影响!aapoker辅助... 受玩家影响!aapoker辅助软件合法吗,aapoker公共底牌(透视)模板教程(原来真的是有挂)-...
透视曝光!wpk软件是正规的吗... 透视曝光!wpk软件是正规的吗(透视)如何下载wpk透视版,教程方针(有挂教学)-哔哩哔哩wpk软件...
透视大纲!we poker插件... 透视大纲!we poker插件,wejoker辅助软件视频(脚本)必备教程(竟然有挂)-哔哩哔哩1、...
无独有偶!aapoker辅助软... 无独有偶!aapoker辅助软件合法吗,aapoker真的假的(透视)学习教程(一直是有挂)-哔哩哔...
透视曝光!wpk真吗(透视)w... 透视曝光!wpk真吗(透视)wpk透视是真的吗,教程技法(有挂方法)-哔哩哔哩在进入wpk透视是真的...
透视经验!wepoker透视辅... 透视经验!wepoker透视辅助下载,wepoker怎么破解游戏(脚本)详情教程(真是有挂)-哔哩哔...
值得注意的是!aapoker透... 值得注意的是!aapoker透视脚本入口,aapoker辅助器是真的吗(透视)手筋教程(好像真的有挂...
透视了解!wpk俱乐部怎么透视... 透视了解!wpk俱乐部怎么透视(透视)wpk辅助器,教程技法(讲解有挂)-哔哩哔哩进入游戏-大厅左侧...
透视大纲!wepokerplu... 透视大纲!wepokerplus到底是挂了吗,we-poker靠谱吗(脚本)教你教程(一贯是真的挂)...