查询优化的目标思路蛮清晰的,主要是搞清楚怎么把一个查询表达式转成执行效率高的形式。像语法树、等价变换这些听着挺玄,其实就是一步步把 SQL 拆开重组,让数据库少做无用功。这个课件把流程讲得还挺系统的,适合想吃透优化机制的同学。
从语法树的构建到标准形式的转化,每一步都有点门道。比如常见的投影下推
,多人光知道名词,不知道啥时候该用,这里面就有讲。你要是平时写查询语句还靠猜,强烈建议看一下。
顺便推荐几个相关资源:关系代数语法树这篇文章配合本课件看,理解更快;还有表达式优化技巧,讲比较运算符怎么用得更高效。
如果你正在学数据库,或者写 SQL 经常卡在性能瓶颈上,不妨把这个课件过一遍,理解了查询优化思路,再加点实战练习,效果立马不一样。