基于规则MySQL查询优化与子查询处理.pdfVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

基于规则的优化

:MySQL是怎样运行的

大家别忘了MySQL本质上是⼀个软件,设计MySQL的大叔并不能要求

使用这个软件的人个个都是数据库高高手,就像我写这本书的时候并

不能要求各位在学之前就会了里边儿的知识。

吐槽⼀下:都会了的人谁还看呢,难道是为了精神上受感化?

也就是说我们⽆法避免某些同学写⼀些执行起来⼗分耗费性能的语

句。即使是这样,设计MySQL的大叔还是依据⼀些规则,竭尽全⼒的

把这个很糟糕的语句转换成某种可以⽐较高效执行的形式,这个过程

也可以被称作查询重写(就是人家觉得你写的语句不好,自己再重写

⼀遍)。本章详细唠叨⼀下⼀些⽐较重要的重写规则。

条件化简

我们编写的查询语句的搜索条件本质上是⼀个表达式,这些表达式可

能⽐较繁杂,或者不能高效的执行,MySQL的查询优化器会为我们简

化这些表达式。为了方便大家理解,我们后边举例子的时候都使用诸

如a、b、c之类的简单字⺟代表某个表的列名。

移除不必要的括号

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

((a=5ANDb=c)OR((ac)AND(c5)))

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

Rule-based

optimization

Tags:HowdoesMySQLwork

Don’tforgetthatMySQLisessentiallyasoftware.TheunclewhodesignedMySQL

cannotrequireeveryonetousethissoftwaretobeamasterofdatabases.Justlike

whenIwrotethisbook,Icannotaskyoutolearntheknowledgeinitbefore

learning.

Letmecomin:Whocanstillwatchthosewhoareallintheworld?Isitforthe

purposeofbeingmentallyinfluenced?

Inotherwords,wecannotavoidsomestudentswritingsentencesthatarevery

performance-consuming.Evenso,theunclewhodesignedMySQLstilltriedhisbest

toconvertthisverybadstatementintoaformthatcanbeexecutedmoreefficiently

accordingtosomeru.Thisprocesscanalsobecalledqueryrewriting(thatis,if

someonethinksthatthesentenceyouwroteisnotgood,hewillrewriteityourself).

Thischapterwilltalkaboutsomemoreimportantrewritingruindetail.

条件化简

Thesearchconditionsofthequerystatementwewriteareessentiallyan

expression,whichmaybecomplicatedorcannotbeexecutedefficiently.MySQLs

queryoptimizerwillsimplifytheseexpressionsforus.Tofacilitate

文档评论(0)

cra12138 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档