zoukankan      html  css  js  c++  java
  • 导致索引失效的情况

    1、 最好全值匹配——索引怎么建我怎么用。

    2、 最佳左前缀法则——如果索引了多列,要遵守最左前缀法则。指的是查询要从索引的最左前列开始并且不跳过索引中的列。

    3、不在索引列上做任何操作(计算,函数,(自动或者手动)类型装换),会导致索引失效而导致全表扫描。——MYSQL自带api函数操作,如:left等

    4、存储引擎不能使用索引中范围条件右边的列。——范围之后索引失效。(< ,> between and,)

    5、尽量使用覆盖索引(只访问索引的查询(索引和查询列一致)),减少select*。——按需取数据用多少取多少。
    6、在MYSQL使用不等于(<,>,!=)的时候无法使用索引,会导致索引失效。
    7、is null或者is not null 也会导致无法使用索引。
    8、like以通配符开头('%abc...')MYSQL索引失效会变成全表扫描的操作。——覆盖索引。

    分析:

    • 两边均有%时和左边有%时,索引会失效,而%在右边时,索引可用。
    • 解决like'%字符串%'时索引不被使用的方法:添加覆盖索引。

  • 相关阅读:
    Zju1876 Edit Step Ladders
    Candy糖果盒
    哈希
    最长上升子序列 nlogn
    电费结算
    【luoguP5656】二元一次不定方程(gcd,exgcd,裴蜀定理,不定方程初步)
    DP技巧
    高精
    【CSP烤前注意】
    [Jsoi2015] 种花
  • 原文地址:https://www.cnblogs.com/wwwcf1982603555/p/13143250.html
Copyright © 2011-2022 走看看