索引的分类与使用

数据库索引Index系列 使用情况,索引分类,底层原理 1.什么是索引?为什么要用索引? 1.1索引的含义 数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询,更新数据库中表的数据.索引的实现通常使用B树和变种的B+树(mysql常用的索引就是B+树)。除了数据之外,数据库系统还维护为满足特定查找算法的数据结构,这些数据结构以某种方式引用数据.这种数据结构就是索引! 简言之,索引就类似于书本,字典的目录! 1.2为什么用? 打个比方,如果正确合理设计并且使用索引的MySQL是一辆兰博基尼的话,那么没有设计和使用索引的MySQ.. 阅读详情

索引的分类与使用

索引的分类

MySQL的索引包括普通索引、唯一索引、全文索引、单列索引、多列索引和空间索引等。

  • 从功能逻辑上说,索引主要有 4 种,分别是普通索引、唯一索引、主键索引、全文索引。
  • 按照 物理实现方式,索引可以分为 2 种:聚簇索引和非聚簇索引。
  • 按照 作用字段个数进行划分,分成单列索引和联合索引。
  1. 普通索引

在创建普通索引时,不附加任何限制条件,只是用于提高查询效率。这类索引可以创建在任何数据类型中,其值是否唯一和非空,要由字段本身的完整性约束条件决定。建立索引以后,可以通过索引进行查询。例如,在表student的字段name上建立一个普通索引,查询记录时就可以根据该索引进行查询。

  1. 唯一索引

使用UNIQUE参数可以设置索引为唯一性索引,在创建唯一性索引时,限制该索引的值必须是唯一的,但允许有空值。在一张数据表里可以有多个唯一索引。

例如,在表student的字段email中创建唯一性索引,那么字段email的值就必须是唯一的。通过唯一性索引,可以更快速地确定某条记录。

  1. 主键索引

主键索引就是一种特殊的唯一性索引,在唯一索引的基础上增加了不为空的约束,也就是NOT NULL+UNIQUE,一张表里最多只有一个主键索引。
Why?这是由主键索引的物理实现方式决定的,因为数据存储在文件中只能按照一种顺序进行存储。

  1. 单列索引

在表中的单个字段上创建索引。单列索引只根据该字段进行索引。单列索引可以是普通索引,也可以是唯一性索引,还可以是全文索引。只要保证该索引只对应一个字段即可。一个表可以有多个单列索引。

  1. 多列(组合、联合)索引

多列索引是在表的多个字段组合上创建一个索引。该索引指向创建时对应的多个字段,可以通过这几个字段进行查询,但是只有查询条件中使用了这些字段中的第一个字段时才会被使用。例如,在表中的字段id、name和gender上建立一个多列索引idx_id_name_gender,只有在查询条件中使用了字段id时该索引才会被使用。使用组合索引时遵循最左前缀集合。

  1. 全文检索

全文索引(也称全文检索)是目前搜索引擎使用的一种关键技术。它能够利用【分词技术】等多种算法智能分析出文本文字中关键词的频率和重要性,然后按照一定的算法规则智能地筛选出我们想要的搜索结果。全文索引非常适合大型数据集,对于小的数据集,它的用处比较小。

使用参数FULLTEXT可以设置索引为全文索引。在定义索引的列上支持值的全文查找,允许在这些索引列中插入重复值和空值。全文索引只能创建在CHAR、VARCHAR或TEXT类型及其系列类型的字段上,**查询数据量较大的字符串类型的字段时,使用全文索引可以提高查询速度。**例如,表student的字段information是TEXT类型,该字段包含了很多文字信息。在字段information上建立全文索引后,可以提高查询字段information的速度。

全文检索典型的有两种类型:自然语言的全文检索和布尔全文检索。

  • 自然语言搜索引擎将计算每一个文档对象和查询的相关度。这里,相关度是基于匹配的关键词的个数,以及关键词在文档中出现的次数。**在整个索引中出现次数越少的词语,匹配时的相关度就越高。**相反,非常常见的单词将不会被搜索,如果一个词语的在超过50%的记录中都出现了,那么自然语言的搜索将不会搜索这类词语。

MySQ 前只有Myisam支持,5.6.4版本以后 innodb才支持,但是官方版本不支持中文分词,需要第三方分词插件。在5.7.6版本,MySQL内置了ngram全文解析器,用来支持亚洲语种的分词。测试或使用全文索引时,要先看一下自己的MySQL版本、存储引擎和数据类型是否支持全文索引。

随着大数据时代的到来,关系型数据库应对全文索引的需求已力不从心,逐渐被solr、ElasticSearch等专门的搜索引擎所替代。

  1. 补充:空间索引

使用参数SPATIAL可以设置索引为空间索引。空间索引只能建立在空间数据类型上,这样可以提高系统获取空间数据的效率。MySQL中的空间数据类型包括GEOMETRY、POINT、LINESTRING和POLYGON等。目前只有MyISAM存储引擎支持空间检索,而且索引的字段不能为空值。对于初学者来说,这类索引很少会用到。

小结:不同的存储引擎支持的索引类型也不一样

**InnoDB :**支持 B-tree、Full-text 等索引,不支持 Hash
索引;

MyISAM : 支持 B-tree、Full-text 等索引,不支持 Hash 索引;

**Memory :**支持 B-tree、Hash 等
索引,不支持 Full-text 索引;

**NDB :**支持 Hash 索引,不支持 B-tree、Full-text 等索引;

**Archive :**不支持 B-tree、Hash、Full-text 等索引;

创建索引

MySQL支持多种方法在单个或多个列上创建索引:在创建表的定义语句CREATE TABLE中指定索引列,使用ALTER TABLE语句在存在的表上创建索引,或者使用CREATE INDEX语句在已存在的表上添加索引。

创建表的时候创建索引 (隐式的方式创建索引)

举例:

CREATE TABLE dept(
dept_id INT PRIMARY KEY AUTO_INCREMENT,
dept_name VARCHAR(20)
);
CREATE TABLE emp(
emp_id INT PRIMARY KEY AUTO_INCREMENT,
emp_name VARCHAR(20) UNIQUE,
dept_id INT,
CONSTRAINT emp_dept_id_fk FOREIGN KEY(dept_id) REFERENCES dept(dept_id)
);

但是如果要显式的方式创建索引的话,基本语法如下:

CREATE TABLE table_name [col_name data_type][UNIQUE | FULLTEXT | SPATIAL] [INDEX | KEY] [index_name] (col_name [length]) [ASC | DESC]
  • UNIQUE 、 FULLTEXT 和 SPATIAL 为可选参数,分别表示唯一索引、全文索引和空间索引;
  • INDEX 与 KEY 为同义词,两者的作用相同,用来指定创建索引;
  • index_name 指定索引的名称,为可选参数,如果不指定,那么MySQL默认col_name为索引名;
  • col_name 为需要创建索引的字段列,该列必须从数据表中定义的多个列中选择;
  • length 为可选参数,表示索引的长度,只有字符串类型的字段才能指定索引长度;
  • ASC 或 DESC 指定升序或者降序的索引值存储。

创建普通索引

在book表中的year_publication字段上建立普通索引,SQL语句如下:

# 显示的方式创建普通索引 
CREATE TABLE book(
book_id INT ,
book_name VARCHAR(100),
AUTHORS VARCHAR(100),
info VARCHAR(100) ,
COMMENT VARCHAR(100),
year_publication YEAR,
# 声明索引
INDEX idx_bname(book_name)
);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3bmL4DWR-1647694353453)(C:/Users/losser/AppData/Roaming/Typora/typora-user-images/image-20220319185201341.png)]

用命令行查看索引

SHOW CREATE TABLE book\G

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BcFHdAEx-1647694353453)(C:/Users/losser/AppData/Roaming/Typora/typora-user-images/image-20220319190131103.png)]

第二种方式

SHOW INDEX  FROM book;
SHOW INDEX  FROM book/G

创建唯一索引

显示创建

#①创建唯一索引
CREATE TABLE book1(
book_id INT ,
book_name VARCHAR(100),
AUTHORS VARCHAR(100),
info VARCHAR(100) ,
COMMENT VARCHAR(100),
year_publication YEAR,
# 声明索引
UNIQUE INDEX uk_idx_cmt(COMMENT)
);

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FByXOdLz-1647694353454)(C:/Users/losser/AppData/Roaming/Typora/typora-user-images/image-20220319192126456.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-phmSD6AS-1647694353454)(C:/Users/losser/AppData/Roaming/Typora/typora-user-images/image-20220319192211490.png)]

主键索引

创建和删除主键索引

#③主键索引
DROP TABLE book2;
CREATE TABLE book2(
book_id INT  PRIMARY KEY ,
book_name VARCHAR(100),
AUTHORS VARCHAR(100),
info VARCHAR(100) ,
COMMENT VARCHAR(100),
year_publication YEAR
);

SHOW INDEX FROM book2;
#通过删除主键约束的方式删除主键索引
ALTER TABLE book2
DROP PRIMARY KEY;

创建单列索引

DROP TABLE book3;
CREATE TABLE book3(
book_id INT  ,
book_name VARCHAR(100),
AUTHORS VARCHAR(100),
info VARCHAR(100) ,
COMMENT VARCHAR(100),
year_publication YEAR,
UNIQUE KEY idx_bname(book_name)
);
SHOW INDEX FROM book3;

创建联合索引

# ⑤创建联合索引
CREATE TABLE book4(
book_id INT  ,
book_name VARCHAR(100),
AUTHORS VARCHAR(100),
info VARCHAR(100) ,
COMMENT VARCHAR(100),
year_publication YEAR,
 KEY mul_bid_bname_info(book_id,book_name,info)
);
SHOW INDEX FROM book4;

这下面的顺序也是B+树排序的时候按照列排序的顺序

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cF0jDqqw-1647694353455)(C:/Users/losser/AppData/Roaming/Typora/typora-user-images/image-20220319203552548.png)]

# 分析,这个是按照最左前缀原则
EXPLAIN SELECT *
FROM book4 WHERE book_id=1001 AND book_name = 'mysql';

# 先按照book_id进行排序,相同再按照book_name排序,再相同再按照info排序
# 这是不用id直接找name所有索引就用不上
EXPLAIN SELECT *
FROM book4 WHERE book_name = 'mysql'

创建全文索引

FULLTEXT全文索引可以用于全文搜索,并且只为CHAR、VARCHAR和TEXT列创建索引。索引总是对整个列进行,不支持局部(前缀)索引。

举例1:创建表test4,在表中的info字段上建立全文索引,SQL语句如下:

CREATE TABLE test4(
id INT NOT NULL,
name CHAR(30) NOT NULL,
age INT NOT NULL,
info VARCHAR(255),
FULLTEXT INDEX futxt_idx_info(info)
) ENGINE=MyISAM;

在MySQL5.7及之后版本中可以不指定最后的ENGINE了,因为在此版本中InnoDB支持全文索引。

语句执行完毕之后,使用SHOW CREATE TABLE查看表结构:

SHOW INDEX FROM test4;

举例2:

CREATE TABLE articles (
id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
title VARCHAR (200),
body TEXT,
FULLTEXT index (title, body)
) ENGINE = INNODB ;

创建了一个给title和body字段添加全文索引的表。

举例3:

CREATE TABLE `papers` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`title` varchar(200) DEFAULT NULL,
`content` text,
PRIMARY KEY (`id`),
FULLTEXT KEY `title` (`title`,`content`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

不同于like方式的的查询:

SELECT * FROM papers WHERE content LIKE ‘%查询字符串%’;

全文索引用match+against方式查询:

SELECT * FROM papers WHERE MATCH(title,content) AGAINST (‘查询字符串’);

注意点

  1. 使用全文索引前,搞清楚版本支持情况;
  2. 全文索引比 like + % 快 N 倍,但是可能存在精度问题
  3. 如果需要全文索引的是大量数据,建议先添加数据,再创建索引。
【Mysql数据库 第12章】MySQL的索引使用、索引的分类、索引的原理 索引是通过某种算法,构建出一个数据模型,用于快速找出在某个列中有一特定值的行,不使用索引,MySQL必须从第一条记录开始读完整个表,直到找出相关的行,表越大,查询数据所花费的时间就越多,如果表中查询的列有一个索引,MySQL能够快速到达一个位置去搜索数据文件,而不必查看所有数据,那么将会节省很大一部分时间索引类似一本书的目录,比如要查找’student’这个单词,可以先找到s开头的页然后向后查找,这个就类似索引。 阅读详情

相关推荐

UE4/5项目GPU崩溃?可能是Windows的TDR机制在搞鬼!深入浅出聊聊TdrDelay与显卡超时

本文深入探讨了UE4/5项目中GPU崩溃的常见原因,揭示了Windows TDR机制的工作原理及其对渲染进程的影响。通过调整TdrDelay参数和优化GPU负载,提供了解决显卡超时问题的实用方案,帮助开发者提升项目稳定性。

weixin_30691649的博客 410

索引的使用以及常见索引类型,组合索引的具体使用方法。

索引的使用以及常见索引类型,组合索引的具体使用方法。

scj0725的博客 2480

WIFI CSI动作识别数据集全解析:从数据采集到深度学习应用

本文全面解析了利用商用Wi-Fi设备的信道状态信息进行动作识别的完整流程。文章以经典WiSA数据集为例,深入剖析了CSI数据的采集原理、结构特点,并详细阐述了从原始数据预处理、特征工程到深度学习模型(如CNN-LSTM融合架构)构建与优化的关键技术,旨在为研究者提供从数据到应用的全链路实战指南。

r2s3t4的博客 281

Mysql之索引的分类

在了解mysql索引的分类之前,要先注意以下几点: 索引可以加快查询的速度,但是会影响插入数据的速度。(在插入数据的同时,数据库会按照索引排序。所以在插入大量的数据时,可以先删除索引,插入完成以后,再创建索引); 索引的最终目的是为了使查询数据的速度变快; 要根据实际情况,选择最合适的的索引方式; Mysql的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引等。 普...

秋凉知意 1359

LaTeX双栏浮动结构实战:用dblfloatfix解决跨栏图表排版难题

本文深入探讨了LaTeX双栏浮动结构在学术论文排版中的常见问题,特别是IEEE会议论文中的跨栏图表定位难题。通过介绍dblfloatfix包的整合解决方案,帮助用户实现精准的底部定位和浮动顺序保持,提升排版效率与质量。

weixin_30872499的博客 443

【WSL2+Ubuntu+Docker Desktop】迁移到D盘

该篇文章包含将WSL2+ubuntu+Docker Desktop从C盘迁移到D盘

哈茶的博客 3930

索引的定义、分类及使用

索引 1、什么是索引?索引的常见类型有什么? 索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。 建设原则:  1、索引应该经常建在Where 子句经常用到的列上。如果某个大表经常使用某个字段进行查询,并且检索行数小于总表行数的5%。则应...

W_Y_L_的博客 3717

领域驱动设计整理——实体和值对象设计

实体引言在领域驱动设计里,实体的设计可以说是通用语言的核心,也是最开始在模型划分中需要考虑的。怎么样设计实体和怎么样划分限界上下文同样重要。实体的概念就是要保证通用语言的完整性。领域驱动让设计实体的关注点从数据的属性和表的关联转化到了富有行为的领域概念上。 实体是具有可变性的,这是一个和值对象比较明显的区分,也即实体是可以持续得变化,持续得修改,并且具有唯一的标识。在设计实体的时候需要跳出CRUD的

马猴烧酒└(┐卍^o^)卍ドゥルルル~楪詩月「YUZURIHA SHIZUKI」 2万+

listview 判断鼠标点击的是哪一列

private void listView1_MouseDown(object sender, MouseEventArgs e) { try { ListViewItem item = this.listView1.GetItemAt(e.X, e.Y); int intCol= item...

Hat_man_的博客 1137

【异常】OpenClaw 项目 `fetch failed` 报错问题排查与解决方案Response interrupted: TypeError: fetch failed

针对无超时控制、异常兜底缺失导致的请求中断,封装标准化的安全请求工具,一次性解决超时控制、异常捕获、日志埋点三大问题,全项目替换原生。:将项目运行的 Node.js 版本升级至 18.x 及以上 LTS 版本,使用 Node.js 内置的稳定版。实现的网络请求环节,包括但不限于:第三方开放接口调用、内部服务接口通信、跨域资源请求、外部配置拉取等场景。:针对无法升级 Node.js 版本的存量环境,通过社区稳定兼容包替换原生。类型异常,直接造成业务请求响应中断。第二步:业务代码改造,替换原生。

奶爸的编程之路,也就一周冷个三天 367

用 SNC 和 SAP Single Sign-On Secure Login 把 SAP 登录这件小事,变成一件安全又不用输密码的事

在传统的 SAP 系统里,登录这件事看起来很朴素:用户打开 SAP GUI,输入一个 SAP 用户名,再输入一个 SAP 密码,点回车,进系统,开始干活。表面上没毛病,但从安全角度看,这种老办法问题很大。默认情况下,这些用户名和密码在网络上传输时是明文,也就是不加密传输。攻击者如果在公司网络里做监听,理论上可以直接截取到口令信息,这种风险对今天任何一家合规要求高、审计严格的企业来说,基本是不可接受的。(SAP Help Portal)SAP 给出的答案叫做 ,全称是 。SNC 做的事情可以概括成两类:一类是

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 377

【数据库】索引使用方式

使用索引是提高数据库查询效率的主要方式,下面从索引结构,索引类型,索引操作,命中索引几个方面来介绍索引。 一、索引结构 mysql5.5以上的默认存储引擎innodb,只显式支持BTree( 事实上从数据结构上来讲是B+树,mysql称之为BTree)索引,对于频繁访问的表,innodb会建立自适应hash索引, 即在B树索引基础上建立hash索引,可以显著提高查找效率,用户是无法自己指定的,除此之外还有Hash索引和全文索引(fullText索引)。 BTree索引 BTree,顾名思义,就是所有的索引节

欢迎指错||纠正||建议||水评+点赞&&评论&&关注&&转发 6336

深入解析:武汉光庭信息技术 Android CarPlay 开发岗位的技术要求与面试准备(大连)

武汉光庭信息大连分部招聘Android CarPlay开发工程师,要求专科以上学历及2年以上Android开发经验,需精通CarPlay集成技术与车载系统开发。该职位涉及Android底层框架修改、CarPlay协议实现及车规级系统开发,需处理USB/HID驱动、图形合成等技术难点,并确保通过Apple严格认证。求职者需具备扎实的Android开发能力,熟悉车载环境特殊性,包括系统稳定性保障、人机交互适配等技术要点。文章深度解析了职位技术内涵,并提供面试问题与参考答案,帮助求职者全面准备这一复合型技术岗位。

郑伟强dev的专栏 400

MySQL之索引初识篇:索引机制、索引分类、索引使用与管理综述

对于MySQL索引就是用来帮助表快速检索目标数据的。此时先来简单回顾一下MySQL中索引是如何使用的呢?首先需要创建索引,MySQL可以通过三种方式创建一个索引。

Huangjiazhen711的博客 878

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

(四)MySQL之索引初识篇:索引机制、索引分类、索引使用与管理综述

对于MySQL索引就是用来帮助表快速检索目标数据的。此时先来简单回顾一下MySQL中索引是如何使用的呢?首先需要创建索引,MySQL可以通过三种方式创建一个索引。OK~,在本篇中就对MySQL的索引机制有了全面认知,从索引的由来,到索引概述、索引管理、索引分类、唯一/全文/联合/空间索引的创建与使用等内容,进行了全面概述,相信本章看下来,足够让你对MySQL索引机制有一个系统化的体系,那么我们下篇再见。

m0_59236433的博客 882

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

MySQL索引分类、何时情况下使用、何时失效

目录 分类 何时使用 何时不使用索引 何时失效 explain语句 分类 MySQL索引分为普通索引、唯一索引、主键索引、组合索引、全文索引。索引不会包含有null值的列,索引项可以为null(唯一索引、组合索引等),但是只要列中有null值就不会被包含在索引中。 普通索引:create index index_name on table(column);或者创建表时指定,create table(..., index index_name column); 唯一索引:类似普通索...

qq_36408229的博客 520

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

【史上最详细版】MYSQL索引 认识索引、索引结构、索引分类(聚集索引、二级索引)、SQL优化分析、索引使用、前缀索引、索引设计原则

数据库索引是一种数据结构,用于提高数据库查询的速度和性能。索引类似于书籍的目录,它们提供了一种快速查找数据的方式,而不需要完全扫描整个数据集。

2301_77358195的博客 2344

深入解析MySQL索引:本质、分类、选择及使用原则

索引作为数据库中的一种核心数据结构,对于提高数据查询效率具有至关重要的作用。通过深入理解索引的本质、分类、选择及使用原则,我们可以更好地设计和优化数据库索引,从而提高数据库的性能和响应速度。在选择索引数据结构时,B+树凭借其高效的性能、稳定的数据结构和广泛的适用性成为了首选。同时,不同的存储引擎在索引支持、事务处理等方面各具特点,我们需要根据业务需求和数据特性进行权衡和选择。在使用索引时,我们应遵循一定的原则和方法来确保索引的有效性和高效性。

喜欢猪猪 910

Mysql索引分类及其使用实例

前面已经知道,Hash索引是将索引键通过Hash运算之后,将Hash运算结果的Hash值和所对应的行指针信息存放于一个Hash表中,由于不同索引键存在相同Hash值,所以即使取满足某个Hash键值的数据的记录条数,也无法从Hash索引中直接完成查询,还是要通过访问表中的实际数据进行相应的比较,并得到相应的结果。任何事物都是有两面性的,Hash索引也一样,虽然Hash索引效率高,但是Hash索引本身由于其特殊性也带来了很多限制和弊端,主要有以下这些。......

qq_45752401的博客 2865

聚簇索引、哈希索引、覆盖索引、索引分类、最左前缀原则、判断索引使用情况、索引失效条件、优化查询性能

聚簇索引的叶子节点直接存储整行数据(而不是指向数据的指针),因此表中的数据行。

LIHONGYU的博客 1055

架构师之路--达梦数据库索引分类、创建与使用详解

架构师之路--达梦数据库索引分类、创建与使用详解

shine_du的博客 2431

mysql 学习14 索引,索引结构,索引分类,索引语法,SQL语句性能分析,索引使用,索引设计原则

目的是帮助mysql 高效获取数据。

hunandede的博客 522

MySQL-索引分类及使用索引

1、什么是索引? 索引:存储引擎用于快速找到记录的一种数据结构,默认使用B-Tree索引。索引是存储引擎层中实现。简单理解为:排好序的快速查找数据结构 索引的目的:提高数据查询的效率,优化查询性能,就像书的目录一样。 优势:提高检索效率,降低IO成本;排好序的表,降低CPU的消耗 劣势:索引实际也是一张表,该表保存了主键与索引字段,并指向实体表的记录,占用空间;降低更新表的速度(...

weixin_30340745的博客 208

索引的基本概念、分类、优点、使用

一、索引的概念         索引就是加快检索表中数据的方法。数据库的索引类似于书籍的索引。在书籍中,索引允许用户不必翻阅完整个书就能迅速地找到所需要的信息。在数据库中,索引也允许数据库程序迅速地找到表中的数据,而不必扫描整个数据库。 二、索引的特点     1.索引可以加快数据库的检索速度     2.索引降低了数据库插入、修改、删除等维护任务的速度     3.索引创建在表上,

下雨天__的专栏 701

MYSQL10_索引的分类、创建修改删除索引、新特性降序隐藏、适合以及不适合使用索引情况

MYSQL10_索引的分类、创建修改删除索引、新特性降序隐藏、适合以及不适合使用索引情况

所得皆惊喜 1106
上一篇: redis集群
下一篇: MySQL8.0索引新特性
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值