SQL优化解决思路

来源:互联网 发布:安卓下载软件平台 编辑:程序博客网 时间:2024/04/30 07:55

下面是我总结的SQL优化思路,也是对自己做了这几年系统和数据库优化的一个小结,不是很完整,写这个文档是应付领导的,现在共享出来,以后在慢慢更正吧!

 

 

数据库层面优化解决思路:

 

当出现SQL查询比较慢问题

 

在数据库层面,优化方法一般采用,减少访问次数高效SQL,建立索引和建立表分区

 

 情况一:一个功能执行很慢,通过SQL Profile取出SQL语句。如果查看sql的各个表,如果查询的表的数据量在5万以下,

 

   解决思路:

      1,看该查询sql是否在循环语句的调用,如果是看是否能改成一条SQL,尽量减少访问数据库

 

 情况二,查询的表数据量比较大(超过50万以上)

   1检查SQL语句的写法

    这是一个看SQL语句的写法:

1,避免使用: like  ‘%关键字%’

2,使用分页,减少查询出数据量。

3,避免在字段上使用函数:

  upper(“字段”)= 改成 字段=upper(‘’)

       4 尽量少用”or”关键字

2对查询的字段建立索引

如:select * from doc  where objid=’ 4028819e181e984c01181f5874f703f1’

查询如果慢的话,就需要在doc 表的objid建立索引

3对大表建立分区

 对大型的表一般建立分区,可以按照是否结束(isfinished,是否删除(isdeleted,和模块分区(doc cusr等)等来分区。