ITPub博客

首页 > 数据库 > MySQL > SQL 优化手册

SQL 优化手册

MySQL 作者:mcxiaoracle 时间:2023-10-16 23:52:57 0 删除 编辑

规范sql编写:在做性能测试的时候:简单层面的方法的下的方法:

1.SQL语句使用大写的,减少编译时间

2.查询时候使用表的别名,减少编译时间以及拼接表中列歧义引起的错误

3.表名顺序,sql自右往左处理from后的表名,数据量大的表放在后边,多个表的情况下使用数据量少的表作为基础表,3个表的话用交叉表作为基础表

4.where子句中的连接顺序:sql子下往上处理where子句,将能过滤多数数据的条件放到末尾。

5.select 中避免使用*,减少编译时间

6.数据处理尽量放在服务器上执行,建立编译好的存储过程

7.多使用commit提交,不要执行了很多处理语句后再提交

8.尽量减少对表的查询,select中不查表,where后不查表

9.避免耗费资源高的操作:distinct,union,minus(差集),intersect(交集),order by

10.union all 不会对结果集排序,可以使用。

11.exists替换distinct,exists子查询满足条件会立刻返回结果。

select a.name from users a where exists (select 1 from users b where a.name=b.name);

12.where子句替换having,一般我都不用having,很少接触到,也不了解。

13.truncate代替delete清空表。

14.decode函数可以减少处理时间。

15.用exists代替in,not exists代替not in

in 跟exists执行效率会有交集, 

16.全数字的字段尽量不建成字符型   

17.varchar/nvarchar 比char/nchar效率高

18.表连接不应太多,5个以内最好

19.避免使用多层嵌套视图

20.in中出现多的放在前边,减少遍历次数

21.尽量使用>=,少使用>

22.批量添加数据,使用批量添加语句

23.尽量少使用触发器

24.合理使用索引,对于数据操作频繁的尽量不要使用索引,影响操作效率。




参考资料:

https://www.cnblogs.com/nydk/p/13995215.html





来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69949806/viewspace-2989225/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
数据方向,了解oracle ,IBM DB2 730

注册时间:2019-09-30

  • 博文量
    286
  • 访问量
    226568