oracle中where条件的执行是从右到左的。
比如
1.Select 'ok' From Dual Where 1 / 0 = 1 And 1 = 2;
2.Select 'ok' From Dual Where 1 = 2 And 1 / 0 = 1;
在oracle中语句1可以执行,语句2会报错。
但是在DB2中语句1和语句2都可以执行通过,那么DB2where条件的执行顺序是怎样的呢,怎么验证?
求教。
------解决方案--------------------------------------------------------
db2把这些条件都看成是平等的,然后基于执行成本来排序
------解决方案--------------------------------------------------------
DB2 优化器是一种基于成本的优化器。它根据表和索引的相关统计信息作出决策