您的当前位置:首页正文

mysqlinnodb索引原理的详细介绍(代码示例)

2020-11-09 来源:尚佳旅游分享网

  • 索引列的数据长度能少则少。
  • 索引数据长度越小,每个块中存储的索引数量越多,一次IO获取的值更多。

  • 匹配列前缀可用到索引 like 9999%,like %9999%、like %9999用不到索引;
  • Where 条件中in和or可以使用索引, not in 和 <>操作无法使用索引;
  • 如果是not in或<>,面对B+树,引擎根本不知道应该从哪个节点入手。

  • 匹配范围值,order by 也可用到索引;
  • 多用指定列查询,只返回自己想到的数据列,少用select *;
  • 不需要查询无用字段,并且不使用*可能还会命中覆盖索引哦;

  • 联合索引中如果不是按照索引最左列开始查找,无法使用索引;
  • 最左匹配原则;

  • 联合索引中精确匹配最左前列并范围匹配另外一列可以用到索引;
  • 联合索引中如果查询中有某个列的范围查询,则其右边的所有列都无法使用索
  • 显示全文