在SQL里,有很多子句都可以带有表达式,比如
其中SELECT子句中,GROUP BY子句中, WHERE子句中都带有表达式。...3.布尔表达式分析
布尔表达式的分析主要作用是可以让之后的SQL优化更容易的进行下去,如Join时的条件下推优化,分区裁剪优化,都需要使用布尔表达式分析后的结果来进行。...列裁剪在生成查询计划时,默认会把全表中没一列的数据都读取出来,但现实的情况是用户可能只需要其中的某几列做计算,其他的列就变成了冗余数据,读取出来耗时耗力,但没有被用到。...此时,我们就使用列裁剪这个优化去把不必要的列裁剪掉。...还是使用逻辑查询计划生成的那个例子来描述一下物理查询计划是什么样子:
?
现在,又进入了一个优化的环节。