mysql 建立索引场合及索引使用

Posted 一根PHP

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql 建立索引场合及索引使用相关的知识,希望对你有一定的参考价值。

索引建立场合:
① where后边字段 适合建立索引
② order by 排序字段适合建立索引
③ 索引覆盖 即 所要查询的字段本身就是索引 直接在索引中查询数据。 例如 select name,age from man 其中name,age 本身具有索引。
④ 连表查询 (外键设置索引) 在生产活动中,一般不使用外键索引。而是使用普通索引代替外键索引。

⑤建立索引字段需要离散度较高字段,例如性别这种字段不适合建立索引,(建立也会用不上索引会走表扫描形式)


  

索引使用原则
① 字段独立 select * from man where ID+2 =5 这样的查询是不会使用到所用的,即所谓字段独立原则。
② 左原则(模糊查询时) Like 查询时候,左边固定有可能使用到索引。 左边不固定无法使用索引。
③ 复合索引 完整使用复合索时,可使用索引。单独使用第一个索引,可使用到索引。单独使用第二个字段无法使用到索引。
④ or原则 如果两边都有索引则都能使用到索引。 一个有索引一个没有索引无法使用到索引,与OR条件左右顺序无关。

 










以上是关于mysql 建立索引场合及索引使用的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL 如何建立索引及如何使用索引

MYSQL的索引类型:PRIMARY, INDEX,UNIQUE,FULLTEXT,SPAIAL 区别与使用场合

mysql建立索引类型及索引建立的原则

Mysql索引PRIMARYNORMALUNIQUEFULLTEXT 区别和使用场合

MySQL优化:索引失效分析in与exists使用场合

索引-建立框架篇