美文网首页
对mysql中Btree索引和Hash索引的几个提问

对mysql中Btree索引和Hash索引的几个提问

作者: 小伟_be27 | 来源:发表于2019-01-17 22:06 被阅读21次

B-tree索引的特点?

    B-tree索引能加快数据的查询速度

    B-tree索引更适合进行范围查找

什么情况下可以用到B树索引?

     全值匹配的查询 order_sn = "987654321"

     匹配最左前缀的查询

     匹配列前缀的查询: order_sn like "9876%"

     匹配范围值的查询:order_sn > '987654321000'  and order_sn > '987654321000'

     精确匹配左前列并范围匹配另外一列

     只访问索引的查询

Btree索引的使用限制?

   如果不是按照索引最左列开始查找,则无法使用索引

   使用索引是不能跳过索引中的列

   not int 和 <>操作无法使用索引

   如果查询中有某个列的范围查询,则其右边所有列都无法使用索引

Hash索引的特点?

   Hash索引是基于Hash表实现的,只有查询条件精确匹配Hash索引中的所有列时,才能够使用到Hash索引。

   对于Hash索引中的所有列,存储引擎都会为每一行计算一个Hash码,Hash索引中存储的就是Hash码

Hash索引的限制?

   Hash索引必须进行二次查找

   Hash索引无法用于排序

   Hash索引不支持部分索引查找也不支持范围查找

为什么要使用索引?

   索引大大减少 了存储引擎需要扫描的数据量

  索引可以帮助我们进行排序一避免使用临时表

  索引 可以把随机I/O变为顺序I/O

相关文章

  • 对mysql中Btree索引和Hash索引的几个提问

    B-tree索引的特点? B-tree索引能加快数据的查询速度 B-tree索引更适合进行范围查找 什么情况下可...

  • Mysql索引与锁

    本文以Mysql5.7为例测试。 1:mysql索引方法 Mysql的索引方法分为btree索引和hash索引。 ...

  • 索引

    MySQL索引原理及慢查询优化 索引的储存分类: BTREE索引和HASH索引。MyISAM 和 InnoDB 存...

  • MySQL面试题 | 附答案解析(四)

    7. 索引算法有哪些? 索引算法有 BTree算法和Hash算法 BTree算法 BTree是最常用的mysql数...

  • MySQL索引

    一、 MySQL: 索引以B树格式保存 Memory存储引擎可以选择Hash或BTree索引,Hash索引只能用于...

  • MySQL的数据库索引优化

    1.Btree索引和Hash索引 MySQL支持的索引类型: B-tree索引的特点: B-tree索引以B+树的...

  • 索引

    1、mysql索引类型:normal、unique、full text 索引方式:btree、hash等等 2、什...

  • 索引详解与优化

    1、索引类型 MySQL中索引的存储类型有两种:BTREE和HASH。 MyISAM和InnoDB存储引擎只支持B...

  • mysql中的btree索引和hash简单笔记

    在mysql中,对于量级较多的数据表增加索引,可大大优化查询的效率。索引的类型分为Btree索引与hash索...

  • mysql索引探究 btree索引和hash索引

    B-tree索引mysql中btree存储的物理文件大多是balance tree(平衡树)结构来存储的。也就是实...

网友评论

      本文标题:对mysql中Btree索引和Hash索引的几个提问

      本文链接:https://www.haomeiwen.com/subject/cymwdqtx.html