首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

Sql解决思路

2012-06-23 
SqlS[解决办法]一般情况下,where条件中和null比较将会导致full table scan,实际上,如果table中索引建列的

Sql
S

[解决办法]

一般情况下,where条件中和null比较将会导致full table scan,实际上,如果table中索引建列的值都为null,那么该行在索引(此处指b*tree,位图索引和聚簇索引可以有空值)中就不会存在,因此oracle为了保证查询结构的准确性,就会用full table scan代替index scan,这样理解,不走索引也就在情理之中。
当然,如果某个索引列上有定义为not null,在这种情况下,不存在所有索引列都为空的情况,所以此种情况下,是可以走index scan的,因此,对于where条件中含有类似is null,=null的情况,是否走索引,还是要看索引建中是否有某个列定义为not null。
[解决办法]
同感兴趣,mark
[解决办法]
具体看执行计划吧
[解决办法]
MARK一下,等待牛人解答
[解决办法]
where name is null 
一般查询条件中出现了这样的条件,都会进行全表扫描~~

热点排行