2019-07-11

sql 调优:

创建索引 1:在where条件上及order by 涉及的列上建立索引(包括单字段索引,复合索引,位图索引,函数索引)

              2:通过查看执行计划分析-索引是否生效 ,分析没有生效原因。

3:使用表的别名

当在SQL语句中连接多个表时,请使用表的别名并把别名前缀于每个列名上。这样就可以减少解析的时间,并减少哪些友列名歧义引起的语法错误。

4:用varchar/nvarchar 代替 char/nchar

    尽可能的使用 varchar/nvarchar 代替 char/nchar ,因为首先变长字段存储空间小,可以节省存储空间

5:

应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,

如:

    select id from t where num is null         

可以在num上设置默认值0,确保表中num列没有null值,

6:日期格式 尽量用between 代替 to_char

7:通过执行计划查看 cost消耗 选择最优sql

              8:如果使用like关键字的时候也会导致索引失效,如果业务允许可以只匹配(‘张三%’)后者的情况下并不会导致索引失效的问题,但是如果是(‘%张三’)这种情况的话就会导致索引失效的问题

9:如果使用的索引字段需要匹配的字段类型是varchar类型的话,若不加单引号 ‘ ’ 的话也会导致索引失效。

10:对于大试图数据:建立物化视图解决查询缓慢

11:使用预编译查询

你可能感兴趣的:(2019-07-11)