更新时间:2019-10-12 10:26:52 来源:极悦 浏览5254次
索引在mysql中也叫做键(key),是存储引擎用于快速找到记录的一种数据结构。
索引的作用:加速查询操作;副作用:降低写操作性能;
索引常见的两种数据结构类型:
1.B-Tree索引:它就是传统意义上的索引,它是最常用、最有效的索引。
2.哈希索引:哈希索引是一种自适应的索引,数据库会根据表的使用情况自动生成哈希索引,我们人为是没办法干预的。
大多数mysql引擎都支持这种索引;
B-Tree(M=4)
B-Tree(M=4,依次插入1~6)
存储引擎不需要进行全表扫描来获取需要的数据,取而代之是从索引的根节点开始进行搜索;
适用于:
限制:
在mysql中,只有memory引擎显式支持哈希索引;基于哈希表实现,只有精确匹配索引所有列的查询才有效;对于每一行数据,存储引擎会对所有的索引列计算一个哈希码,不同的键值行计算出的哈希码不一样,哈希索引将所有的哈希码存储在索引中,同时在哈希表中保存指向每个数据行的指针;(hash索引结构:hash值:指针)
优势:查找速度非常快
限制:
索引优点:
索引的缺点
哪些情况需要加索引?
以上就是极悦java培训机构小编分享的“Java常见面试题—数据库索引详解”的内容,希望对大家有帮助,更多java面试题请继续关注极悦java培训机构官网,每天会精彩内容分享与你。
相关java面试题推荐
2019最新最全java面试题及答案:
Java常见面试题汇总:
2019最新java面试题含答案(基础篇):
各大互联网公司Java面试题汇总:
2019最新Java常见面试题(附带答案):
常被问到的Java面试题(带全部答案):
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习