zoukankan      html  css  js  c++  java
  • 索引优化

    不需要建索引的三种情况:

      1.表记录太少

      2.经常需要增删改查的表

      3.数据重复过多且分布平均的字段,建了效果不明显

    JOIN语句优化

      左右连接相反加索引

      尽量减少join的循环总次数,永远用小的结果集去驱动大的结果集

      保证join字段都已经建好索引

      在无法保证join字段都建好索引的情况下且内存资源充足的情况下,不用太吝啬join buffer的设置

     

    避免索引失效

      1.全值匹配

      2.最佳左前缀法则

      3.不在索引上做任何操作(计算,函数,类型转换),否则索引失效

      4.存储引擎不能使用索引中范围条件右边的列,当复合索引出现模糊查询时,当前字段右边的索引将失效(除like'a%'外,因为a为定值)

      5.尽量使用覆盖索引,减少select *

      6.mysql在使用!=或者<>的时候无法使用索引

      7.is null , is not null 也无法使用索引

      8.like时以通配符%开头时,后面索引失效,级别为range,用覆盖索引则不会失效,但只能用到部分

      9.字符串不加单引号索引失效

      10.少用or,索引会失效

     

    ORDER BY

      复合索引的顺序和ORDER BY不一样时,出现filesort

     GROUP BY

      与ORDER BY 一致

      WHERE 高于 Having, 能用WHERE 尽量不用 HAVNG

  • 相关阅读:
    Linux:sudo,没有找到有效的 sudoers 资源。
    Python中关于CSV文件中的I/O
    Python数据处理进阶——pandas
    脚本的含义
    Common.Logging.dll----------配置方式,可选引用,用于日志输出
    Net作业调度
    MySQL版本介绍
    在 Windows 上安装Rabbit MQ 指南
    版本控制器
    C# 中的占位符本质
  • 原文地址:https://www.cnblogs.com/ldy233/p/11694988.html
Copyright © 2011-2022 走看看