SQL优化记录

2019.06.19记录:

1.SQL优化的原因:

  原因:性能低,执行时间太长,等待时间太长,SQL语句欠佳(尤其连接查询),索引失效,服务器参数设置的不合理(如:缓冲区,线程等)

  a.SQL:

    编写过程:

      select   dinstinct ... from ... join ... on ... where ... group ... where ... group by  ...having ...order by ... limit ...

    解析过程:

      from .. on .. join .. where ... group by ... having ... select dinstinct  ...order by ... limit ...

  b.SQL优化,主要就是优化索引

       索引:相当于书的目录,index .帮助MYSQL高效获取数据的数据结构,索引是数据结构(树:B树,二叉树,Hash树...),mysql中使用的是B树

       索引的弊端:

          1.索引本身很大,可以存放在内存/硬盘中

          2.索引不是所有情况均适用:a.少量数据 b.频繁更新的字段 c.很少使用的字段

          3.索引会降低增删改的效率

       优势:1.提高查询效率(降低IO使用率)

          2.降低CPU使用率(...order by age desc,因为B树索引 本身就是一个好排序的结构,因此在排序时,可以直接使用)

 待续.....

原文地址:https://www.cnblogs.com/ysq0908/p/11054843.html