首页 > 图灵资讯 > java面试题>正文

金三银四精选java面试题-使用索引一定能提升效率吗?(什么时候适合创建索引,什么时候不适合创建索引?)

2024-01-08 13:12:43

 

使用索引一定能提升效率吗?(什么时候适合创建索引,什么时候不适合创建索引?)

 

答案是不一定,任何事物我们都应该辩证的看,知道其运行逻辑从而利用其优点,尽量避开它的缺点。在上面我们已经和大家介绍了过了索引带来的优缺点,那接下来就和大家分享几个建索引的提示。

 

  • 对于查询中使用的少的字段尽量不要创建索引,创建索引是有成本的,空间占用、创建和维护成本、增删改效率降低。
  • 对于数据密度小的列也不建议创建索引,因为InnoDB中索引的B+树所决定的,你能带来的效率提升非常有限。(但是也有例外,举个例子枚举值(1,2,3),头两个占比百分之1%,第三个占比99%,并且头两个搜索占比比第三个高很多,那么是可以建议加索引的)。InnoDB的辅助索引是存在回表的,如果数据密度过小,那么性能可能还不如全表扫。像上面这种场景具有特殊性,也说明一个道理,在大多数场景下建议可能适用,但是也有不适用的时候,我们不要把这种建议当作铁律

 

 


 
上一篇 金三银四精选java面试题-索引的优缺点是什么?
下一篇 金三银四精选java面试题-如何查看一个表的索引?

文章素材均来源于网络,如有侵权,请联系管理员删除。