设为首页 加入收藏

TOP

ORACLE-017:SQL优化-isnotnull和nvl
2015-11-21 01:40:30 来源: 作者: 【 】 浏览:0
Tags:ORACLE-017 SQL 优化 -isnotnull nvl

今天在优化一段sql,原脚本大致如下:

select  a.字段n from tab_a a

where

a.字段2 is not null;

a.字段2增加了索引的,但是查询速度非常慢,

于是做了如下修改:

select  a.字段n from tab_a a

where

nvl(a.字段2,'0' ) != '0';

速度提升很明显。

原因是什么呢?其实很简单,因为is null和is not null使字段的索引失效了。

虽然都知道哪些情形下会使索引失效,但是有时难免受业务需求的影响而考虑的不够全面,所以sql优化要时刻进行,随时进行。努力提高sql的执行效率。

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇一个复杂子查询SQL优化 下一篇SQL数据库的基本操作

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: