sql语句的优化

首先我们得确定哪些sql语句需要优化,一般在一个系统中,查询语句最多,所以我们主要是针对查询语句进行优化。主要采用两种方式来确定要优化的sql语句:

   ①使用慢查询日志,设置需要优化的sql语句的执行时间,记录下超过该设置时间的语句,即为需要优化的语句。

   ②使用profiling机制,记录下每条sql语句的执行时间,找出执行较慢的语句,即为需要优化的语句。

   我们主要通过给表字段添加索引的方式进行优化,加上索引后,sql语句的执行时间显著提高了,但并不是加上索引了这条sql语句就会用到索引,所以首先看执行慢的语句后面是否有加索引,我们可以使用explain或者desc加在要执行的sql语句前,查看是否使用到索引。有几个地方需要注意的是:

  ①为了避免建议索引而造成索引文件过大,有时候我们会使用复合索引,这时候要遵循最左原则。

  ②like查询,前%不会用到索引

  ③如果条件中有or,则要求or的索引字段都必须有索引,否则不能用到索引。

  ④如果列类型是字符串,一定要在条件中将数据使用引号引用起来,否则不使用索引。

  ⑤优化group by 语句

  ⑥尽量避免模糊匹配,这样会导致全盘扫描

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值