标签:style os 时间 size sql on sp 技术
条件:
对元组进行过滤和连接的表达式,形式上是出现在WHERE/JOIN-ON/HAVING的子句中的表达式
把与单个表相关的条件,放到对单表进行扫描的过程中执行。
针对:WHERE、HAVING和JOIN-ON条件由许多表达式组成,而这些表达式在某些时候,彼此之间存在一定的联系
不是任何情况下HAVING条件都可以并入WHERE条件,只有在SQL语句中不存在GROUPBY条件或聚集函数的情况下,才能将HAVING条件与WHERE条件的进行合并。
好处:便于统一、集中化解条件子句,节约多次化解时间
可以减少语法分析时产生的AND和OR树的层次。---减少CPU的消耗
((a AND b) AND (c AND d)) ==》 a and b and c and d
对不同关系可以使得条件分离后有效实施“选择下推”,从而可以极大减小中间关系的规模。
col_1 = col_2 AND col_2 = 3 => col_1 = 3 and col_2 = 3
操作符“=、<、>、<=、>=、<>、<=>、LIKE”中的任何一个,在“col_1 <操作符> col_2”条件中都可能会发生常量传递
化简条件,将不必要的条件去除
WHERE(0 > 1 AND s1 = 5) ==》 where s1=5
WHERE col_1 = 1 + 2 ==》 where col_1 = 3
化简条件(如反转关系操作符的操作数的顺序),从而改变某些表的访问路径
-a = 3 =》 a = -3 ,可以走索引
化简条件,将不必要的重复条件去除。
a > 10 AND b = 6 AND a > 2 =》 b = 6 AND a > 10
标签:style os 时间 size sql on sp 技术
原文地址:http://my.oschina.net/scipio/blog/302332