首页 > 其他分享 >InnerDB的索引

InnerDB的索引

时间:2023-06-08 12:04:08浏览次数:33  
标签:目录 二分法 索引 InnerDB 主键 id

大致理解讲故事:

索引能理解成个一个目录

首先,有个主键索引,是个B+树结构,将主键分为若干的数据页和一个最大值一个最小值,然后上级目录记录最大,最小值,查找时二分法找上级目录,找到所属目录顺下来找他的主键索引

这里建立时,如果没建立主键,系统会默认用unique的字段,如果这个都没有,会有一个隐藏的db_row_id。

 

普通索引,也是二级索引,比如在name字段加索引,或者name+phone里加联合索引,它其实又是另一个目录,会记录他的索引值跟id的关系,结构跟主键索引一样,也有一个目录,二分法找目录,找到再通过普通索引值找到主键id后,再回表去主键索引里找回数据。

标签:目录,二分法,索引,InnerDB,主键,id
From: https://www.cnblogs.com/laokchen/p/17465765.html

相关文章

  • MySQL索引的数据结构
    一:索引概述MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构。索引的本质:索引是数据结构。可以简单理解为“排好序的快速查找数据结构”,满足特定查找算法。这些数据结构以某种方式指向数据,这样就可以在这些数据结构的基础上实现高级查找算法。1:索引优缺点......
  • 在线上项目添加索引
    在MySQL中,我们经常需要对数据进行查询、统计等操作,而索引是数据库优化的重要手段。加了索引的表能够更快速地执行查询操作,同时能够减少查询的开销,提高系统的吞吐率。那么,如何在线上加索引呢?首先,我们需要了解业务场景,明确需要加索引的表和字段,然后考虑索引类型。通常来说,MySQL支......
  • MySQL索引和视图
    索引1、简介在MySQL中,索引index也叫做“键key”,它是存储引擎用于快速找到记录的一种数据结构索引对于良好的性能非常关键,尤其是当表中的数据量越来越大时,索引对性能的影响就愈发重要索引优化应该是对查询性能优化最有效的手段,创建一个真正优秀的索引经常需要重写SQL查询语句......
  • PGAdmin 索引基本操作
    --创建索引CREATEINDEXindex_statistics1ONdbo.integral(deleted,pid,created);--删除索引(需要选中dbo)DROPINDEXindex_statistics5--查询索引SELECT*FROMpg_indexesWHEREschemaname='dbo'andtablename='integral'--分析sqlEXPLAIN......
  • 慢 SQL 优化之索引的作用是什么? | 京东云技术团队
    前言本文针对MySQL数据库的InnoDB存储引擎,介绍其中索引的实现以及索引在慢SQL优化中的作用。本文主要讨论不同场景下索引生效与失效的原因。慢SQL与索引的关系慢SQL优化原则数据库也是应用,MySQL作为一种磁盘数据库,属于典型的IO密集型应用,并且随机IO比顺序IO更昂贵。真......
  • 006 数据库学习笔记--字符串操作函数 + 索引
    常用字符串操作函数:--返回字符串中指定的子串出现的开始位置(索引从1开始)selectCHARINDEX('34','1234567890123')asstartIndex--返回字符串中指定的子串出现的开始位置(索引从1开始,字串前必须加%)selectPATINDEX('%34%','1234567890123')asstartIndex--大小写转化s......
  • mysql 中添加索引的三种方法
    在mysql中有多种索引,有普通索引,全文索引,唯一索引,多列索引,小伙伴们可以通过不同的应用场景来进行索引的新建,在此列出三种新建索引的方法mysql中添加索引的三种方法1.1新建表中添加索引①普通索引1234567createtablet_dept(nointnotnullprimarykey,nameva......
  • 数据结构与算法分析(Java语言描述)(14)—— 索引堆
    packagecom.dataStructure.heap;importjava.util.Arrays;publicclassIndexMaxHeap{//最大索引堆中的数据privateInteger[]data;//最大索引堆中的索引privateint[]indexes;privateintcount;privateintcapacity;//构造函数,......
  • 索引失效的8种情况
     0左边的值未确定,那么无法使用此索引。(like'_雷', like'%雷') 1计算、函数导致索引失效2类型转换(自动或手动)导致索引失效3范围条件右边的列索引失效EXPLAINSELECTSQL_NO_CACHE*FROMstudentWHEREstudent.age=30ANDstudent.classId>20ANDstudent.......
  • KingbaseES大数据量分区表添加主键与索引
    KingbaseES大数据量分区表添加主键与索引一、环境信息:系统信息:$cat/etc/centos-releaseCentOSLinuxrelease8.2.2004(Core)$lscpuArchitecture:x86_64CPUop-mode(s):32-bit,64-bitByteOrder:LittleEndianCPU(s):1On-......