ORACLE SQL性能优化(学习笔记)


记录小的表应该在From的最后
多表查询时

写条件时From最后的哪个表应该先写  ?

WHERE条件时要先写表之间的连接

SELECT 字句避免用'*'

尽量减少访问数据库的次数
 

删除全表时用TRUNCATE替代DELETE(不可恢复)

尽量多使用COMMIT

使用表的别名(Alias)

使用exists替代in         (并非所有情况)

使用 表连接替代exists

避免在索引列上使用计算

避免在索引列上使用NOT

用>=替代>

用UNION替换OR (适用于索引列)

避免在索引列上使用IS NULL和IS NOT NULL

避免改变索引列的类型

用WHERE替代ORDER BY

 ORDER BY 子句只在两种严格的条件下使用索引.

 ORDER BY中所有的列必须包含在相同的索引中并保持在索引中的排列顺序.

 ORDER BY中至少有一列为非空'

 
在Where子句中 !=  || + 运算符 将不使用索引
              列名 = nvl(列名) 不使用索引
              like  >  使用索引

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值