1)IS NULL 与 IS NOT NULL
任何SQL语句,只要在where子句中使用了is null或is not null,那么Oracle优化器就不允许使用索引了。
2)联接列(||)
对于有联接的列,即使最后的联接值为一个静态值,优化器是不会使用索引的,例如
select *
from employss
where first_name||''||last_name ='Beill Cliton';
此时系统优化器对基于last_name 创建的索引没有使用,应调整为
select *
from employss
where first_name ='Beill' and last_name ='Cliton';
3)函数的使用
当有函数作用于索引列上时,索引将失效
4)带通配符(%)的like 语句
通配符(%)在搜寻词首出现时,Oracle不能使用索引,例如
select * from employee where last_name like '%cliton%';
其它时候则能使用,例如,
select * from employee where last_name like 'c%';
5)order by语句
尽量避免使用表达式,为使用的列建立索引。
6)NOT
用于对任何逻辑运算符取反,例如
where not (status ='VALID')
<=> where status <>'INVALID'
此时将不使用索引,例如
select * from employee where salary<>3000;
它将不会使用索引,应改成
select * from employee where salary<3000 or salary>3000;
7)IN和EXISTS
尽量使用EXISTS而不是IN
通过使用EXIST,Oracle 系统会首先检查主查询,然后运行子查询直到它找到第一个匹配项,这就节省了时间。Oracle 系统在执行IN 子查询时,首先执行子查询,并将获得的结果列表存放在在一个加了索引的临时表中。在执行子查询之前,系统先将主查询挂起,待子查询执行完毕,存放在临时表中以后再执行主查询。这也就是使用EXISTS 比使用IN 通常查询速度快的原因。
- 浏览: 347328 次
- 性别:
- 来自: 深圳
最新评论
-
孙大圣123:
大神,你分享的castor dtd文件中没有field-han ...
Castor (二) -- 自定义映射 -
ananeye:
建议举些通俗的例子,说明下。光这样讲,不好懂。
ORACLE 索引原理 -
度_java:
1.不在不同的机器上实现集群功能,除非他们的时钟同步精确到秒。 ...
Quartzs -- Quartz.properties 配置 -
2047699523:
可以参考最新的文档:如何在eclipse jee中检出项目并转 ...
MAVEN3--(三)创建MAVEN项目 -
qgm168:
写的不错,借用啦,哈哈,多谢!
自定义POI EXCEL模板
SQL语句编写注意问题
- 博客分类:
- DataBase
相关推荐
sql语句编写.md
Effective SQL:编写高质量SQL语句的61个有效方法 AW.Effective.SQL.61.Specific.Ways.to.Write.Better.SQL.
SQL语句编写好工具 大家用用觉得怎么样的 谢谢大家的支持哈
可以在写sql语句时,有相应的提升信息,有利于你的快速开发能力
SQL语句调整原则,涉及SQL语句编写注意问题,带通配符(%)的like语句,选择最有效率的表名顺序,减少访问数据库的次数
编写高性能的SQL语句注意事项
微型Sql Server查询分析器: 有时为了解决问题,需要...SQL语句编写助手SQLAssistant: 对主流数据库Sql Server,Oracle,DB2,MySql,Access等都可用,写脚本或存储过程时提示功能十分强大,十分方便,包你爱不释手
SQL语句编写优化和基本原理总结,共有多达20多个点。
ORACLE数据库SQL语句编写优化
使用SQL语句编写各种图形 如直角三角形,正方形,梯形.....
ORACLE数据库SQL语句编写优化总结文档
ORACLE数据库SQL语句编写优化总结
SQL语句的良好编写方法,挺不错的吧,拿出来与大家分享!
该演讲文稿总结了一些sql语句编写的注意事项,如考虑网络负担啊,存储空间等细节问题。
Oracle数据库SQL培训 数据库SQL语句编写培训教程 Oracle高级查询SQL优化 集合实际案例讲解 【大纲】 一、高级查询 上期数\上年数\同比\环比 当年累计数 单位占比 单位排名\前N名\后N名 二、SQL优化 什么时候创建...
自己编写的,针对不同的sql语句,进行提取分析一些关键字。希望对大家有帮助。
为了到达同样的目的,sql语句可以有很多种写法,往往选择一种最效率的语句,是非常重要的。
NL2012156_SQL语句编写_试题制作脚本.doc
性能优化与SQL审计高效SQL语句编写