我的编程空间,编程开发者的网络收藏夹
学习永远不晚

MySQL数据库给表添加索引

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

MySQL数据库给表添加索引

说明:当数据库中的记录数过多时,查询速度会显著变慢。此时可以给表创建索引,提高查询速度。

一、创建索引前

我现在有一张表,有1000万条记录,根据username值,查询一条记录,测试下查询时间;

select id, username, password, sex, email from user where username='zhangsan5000025';

在这里插入图片描述

查询时间:25s 695ms

在这里插入图片描述

二、创建索引

(1)创建索引:给user表的username字段,添加索引,索引名为username_index,此过程会花费较长的时间(相较于查询);

create index username_index on user(username);

在这里插入图片描述

(2)查看索引:查看user表的索引;

show index from user;

在这里插入图片描述

(3)删除索引:删除user表的username_index索引;

drop index username_index on user;

三、创建索引后

创建索引后,再试下查询时间,可以看到查询速度有显著提升

select id, username, password, sex, email from user where username='zhangsan5000025';

查询时间:73ms
在这里插入图片描述

总结

需要知道以下这些:

(1)MySQL的索引,底层是用B+Tree实现的

(2)索引并不是加的越多越好,添加索引会增加数据所占的空间,所以通常给查询频繁的字段添加索引;

(未使用索引的数据大小)

在这里插入图片描述

(加索引后的数据大小)

在这里插入图片描述

(3)MySQL中,表的主键、唯一约束是自动生成的索引(其实也好理解,不建立索引,数据库怎么能在添加数据时,立刻检索到我们添加的数据是否唯一呢?);

来源地址:https://blog.csdn.net/qq_42108331/article/details/131076422

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

MySQL数据库给表添加索引

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

oracle怎么给已有数据表添加索引

要给已有数据表添加索引,可以使用Oracle的CREATE INDEX语句。以下是添加索引的基本语法:```CREATE INDEX index_nameON table_name (column1, column2, ...);```其中
2023-10-08

sqlserver怎么给全表添加索引

要给一个表添加索引,可以使用以下 SQL 语句:CREATE INDEX index_name ON table_name (column1, column2, ...);其中,index_name 是索引的名称,table_name 是
sqlserver怎么给全表添加索引
2024-04-09

oracle怎么给表字段添加索引

要给表字段添加索引,可以使用Oracle的CREATE INDEX语句。语法如下:```CREATE INDEX index_nameON table_name (column_name);```其中,index_name是要创建的索引的名
2023-08-28

使用Python的enumerate()函数给列表添加索引

使用Python的enumerate()函数给列表添加索引,具体代码示例如下:在Python中,经常需要对列表进行遍历,并同时获取元素的索引值。为了方便处理这种情况,Python提供了enumerate()函数,可以一行代码解决问题。enu
使用Python的enumerate()函数给列表添加索引
2023-11-18

sqlserver 给表添加索引的操作方法

sqlserver 如何给表添加索引-- 创建一个新的非唯一聚集索引CREATE INDEX idx_column1ON TableName (Column1);-- 创建一个新的唯一非聚集索引CREATE UNIQUE INDE
2023-10-18

oracle数据库怎么给表添加列

在Oracle数据库中,可以使用ALTER TABLE语句来给表添加列。具体步骤如下:打开SQL命令行或客户端工具,连接到Oracle数据库。使用以下ALTER TABLE语句来添加新列:ALTER TABLE table_name ADD
oracle数据库怎么给表添加列
2024-04-09

mysql添加索引(建表之后)

一.使用ALTER TABLE语句创建索引语法如下:alter table table_name add index index_name (column_list) ;alter table table_name add unique (column_lis
mysql添加索引(建表之后)
2015-06-14

plsql给表添加索引的方法是什么

在PL/SQL中给表添加索引的方法是使用CREATE INDEX语句。下面是一个简单的示例:CREATE INDEX index_nameON table_name (column1, column2);在这个示例中,index_nam
plsql给表添加索引的方法是什么
2024-04-09

使用shell脚本怎么给mysql添加索引

本篇文章为大家展示了使用shell脚本怎么给mysql添加索引,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。用shell脚本来给mysql加索引#! /bin/bashtb_base=tb_stud
2023-06-09

plsql如何给表添加数据

在PL/SQL中,可以使用INSERT语句来给表添加数据。INSERT语句的基本语法如下:```INSERT INTO 表名 (列1, 列2, 列3, ...) VALUES (值1, 值2, 值3, ...);```其中,表名是要插入数据
2023-10-07

sqlserver如何给表添加数据

要给表添加数据,可以使用SQL Server中的INSERT语句。以下是一个示例:INSERT INTO 表名 (列1, 列2, 列3)VALUES (值1, 值2, 值3);在上面的示例中,你需要将表名替换为你要添加数据的表的名称,列
sqlserver如何给表添加数据
2024-04-10

mysql如何给千万数据表添加字段

要给千万数据表添加字段,可以使用ALTER TABLE语句。首先,连接到MySQL数据库并选择要添加字段的数据库。然后,使用以下语法执行ALTER TABLE语句来添加字段:```ALTER TABLE 表名 ADD COLUMN 新字段名
2023-09-28

mysql怎么给表的指定列添加数据

在MySQL中,可以使用INSERT语句来为表的指定列添加新的数据。语法如下:INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, value2,
mysql怎么给表的指定列添加数据
2024-04-09

mysql在建表语句中添加索引

普通索引创建创建普通索引,即不添加 UNIQUE、FULLTEXT 等任何参数。【例】创建表名为 score 的数据表,并在该表的 id 字段上建立索引,SQL 语句如下:CREATE table score( id int(11) AUTO_INC
mysql在建表语句中添加索引
2015-11-16

AndoridSQLite数据库开发中如何添加索引

本篇文章为大家展示了AndoridSQLite数据库开发中如何添加索引,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。AndoridSQLite数据库开发添加索引索引是一种通过预先排序和对表的一个或多
2023-06-04

编程热搜

目录