SQL优化手段

一、建立索引

要尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引(order by desc会非常影响效率)。

二、避免在建立索引的字段进行计算操作。

三、使用预编译查询,用问号代替参数位置,防止sql注入攻击

四、调整where的连接顺序,因为DBMS是按照从下到上的顺序执行的。

五、使用union all 代替 union (Union因为要进行重复值扫描,所以效率低。如果合并没有刻意要删除重复行,那么就使用Union All),前提是如果确定检索结果中不会有重复的记录时候

六、使用 varchar/nvarchar 代替 char/nchar:

因为varchar是可变长度,char是固定长度
虽然效率上char要高,但是空间上会浪费,举个例子:
varchar(5),char(5)如果都赋值'abc',那么varchar只用了3个字符空间
而char用了3个后会自动拿空间填满,所以始终是会占用5个字符空间

posted @ 2019-09-05 14:56  LMCGD  阅读(119)  评论(0编辑  收藏  举报