去评论
推扬网

索引是什么意思(数据库中的索引是什么)

admin
2020/04/17 23:06:14

mysql中索引是存储引擎层面用于快速查询找到记录的一种数据结构,索引对性能的影响非常重要,特别是表中数据量很大的时候,正确的索引会极大的提成查询效率。简单理解索引,就相当于一本砖头厚书的目录部分,通过目录可以快速查找到想要找的内容具体所在的页码。

二、索引有哪些种类


1、B-TREE索引

索引的存储结构:B-TREE

B-TREE索引应用范围 索引包含多列时,索引对于多个值得排序依据是create table 时索引的列的顺序,既:key(column1,column2,column3),排序就是按照column1-> column2 -> column3 的顺序,存储也是按照此顺序,应用于如下类型查询更有效:

B-TREE索引使用限制

注:索引列的顺序直接影响着查询是否能够应用索引,在各种条件查询的情况下,一种索引未必能够满足要求,所以往往就需要多组相同列顺序不同的索引来优化性能。

2、HASH索引

基于HASH表结构(Key-Value)实现,只有精确匹配索引全部列的查询才有效,每一行数据,存储引擎都会对所有索引列计算出一个hash code,作为key值存放在hash表中,value存放指向每个数据行的指针。