索引的应用场景

什么场景不要用索引

1)数据更新性能比查询性能要求要高的情况下不要使用索引,因为数据的更新的同时索引也要进行维护和更新(加了索引查询快但更新就会慢);

2)不要盲目的给表建太多索引,因为索引本身的存储也要占用存储空间,一旦更新操作频繁反而降低新性能;

3)不要给不经常使用的列建索引,不怎么查询还建索引干嘛;

4)不要给高重复值的列建索引,索引本身就是为了提高查询速度,然而数据值高度重复,数据区别性不高,索引起不了效果)(比如说:性别);

5)不要给img,tex.bit数据类型使用索引,因为这种字段一般使用很少,数据量太大。

什么场景用索引?

1)经常要用于查询的列 where id=?;

2)经常要用于排序(order by),分组(group by)的列,因为索引已经排好序了;

3)有值唯一性限制的列,比如说主键、用户名。