Oracle - SQL语句简单优化

1. 对查询进行优化, 应尽量避免全表扫描, 首先应考虑在 where 及 order by 涉及的列上建立索引

会导致引擎放弃使用索引而进行全表扫描的相关操作 : 

  2. 应尽量避免在 where 子句中对字段进行 null 值判断

  3. 应尽量避免在 where 子句中使用 != 或 <> 操作符

  4. 应尽量避免在 where 子句中使用 or 来连接条件

  5. in 和 not in 也要慎用

  6. 使用 like '%xxx%' 也将导致全表扫描

  7. 应尽量避免在 where 子句中对字段进行表达式操作

  8. 应尽量避免在 where 子句中对字段进行函数操作

9. 尽量使用数字型字段, 若只含数值信息的字段, 尽量不要设计为字符型, 这会降低查询和连接的性能,

    并会增加存储开销, 这是因为引擎在处理查询和连接时会逐个比较字符串中的每一个字符,

    而对于数字而言只需要比较一次就可以了

10. 尽可能的使用 varchar 代替 char

11. 任何地方都不要使用 select * from ..., 用具体的字段列表代替'*', 不要返回任何用不到的字段

 

posted @ 2020-03-31 19:21  萌胖次  阅读(176)  评论(0编辑  收藏  举报