zoukankan      html  css  js  c++  java
  • ORACLE-017:SQL优化-is not null和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';

    速度提升非常明显。

    原因是什么呢?事实上非常easy,由于is null和is not null使字段的索引失效了。

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

  • 相关阅读:
    菜根谭#69
    菜根谭#68
    菜根谭#67
    菜根谭#66
    菜根谭#65
    菜根谭#64
    菜根谭#63
    更新centos本地仓库(换源)
    docker初探
    centos python版本升级到3.x
  • 原文地址:https://www.cnblogs.com/slgkaifa/p/6936231.html
Copyright © 2011-2022 走看看