索引是一种数据结构,MYSQL允许我们在现有表中添加索引。使用索引可以更快地检索数据库表上的记录。索引为索引列的每个值创建一个条目。我们可以通过使用表的一列或多列来创建索引,以便有效地访问记录。
当使用主键或唯一键创建表时,它会自动创建一个名为PRIMARY的特殊索引。我们称这个索引为聚集索引。PRIMARY 索引以外的所有索引都称为非聚集索引或二级索引。
普通索引
创建索引
CREATE INDEX indexName ON table_name (column_name)
修改表结构(添加索引)
ALTER table tableName ADD INDEX indexName(columnName)
创建表的时候直接指定
CREATE TABLE mytable(
ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
INDEX indexName
);
删除索引的语法
DROP INDEX [indexName] ON mytable;
唯一索引
创建索引
CREATE UNIQUE INDEX indexName ON mytable(username(length))
修改表结构
ALTER table mytable ADD UNIQUE [indexName] (username(length))
创建表的时候直接指定
CREATE TABLE mytable(
ID INT NOT NULL,
username VARCHAR(16) NOT NULL,
UNIQUE indexName
);
使用ALTER 命令添加和删除索引
ALTER TABLE tbl_name ADD PRIMARY KEY (column_list): 该语句添加一个主键,这意味着索引值必须是唯一的,且不能为NULL。 ALTER TABLE tbl_name ADD UNIQUE index_name (column_list): 这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)。 ALTER TABLE tbl_name ADD INDEX index_name (column_list): 添加普通索引,索引值可出现多次。 ALTER TABLE tbl_name ADD FULLTEXT index_name (column_list):该语句指定了索引为 FULLTEXT ,用于全文索引。
mysql> ALTER TABLE testalter_tbl
ADD INDEX (c);
复制
mysql> ALTER TABLE testalter_tbl
DROP INDEX c;
复制
使用 ALTER 命令添加和删除主键
mysql> ALTER TABLE testalter_tbl
MODIFY i INT NOT NULL;
mysql> ALTER TABLE testalter_tbl
ADD PRIMARY KEY (i);
复制
mysql> ALTER TABLE testalter_tbl
DROP PRIMARY KEY;
复制
显示索引信息
mysql> SHOW INDEX FROM table_name\G
........
复制
长按二维码关注公众号,查阅更多教程
文章转载自跟谁学编程,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
MySQL8.0统计信息总结
闫建(Rock Yan)
572次阅读
2025-03-17 16:04:03
MySQL生产实战优化(利用Index skip scan优化性能提升257倍)
chengang
394次阅读
2025-03-17 10:36:40
MySQL数据库当前和历史事务分析
听见风的声音
361次阅读
2025-04-01 08:47:17
墨天轮个人数说知识点合集
JiekeXu
346次阅读
2025-04-01 15:56:03
MySQL 生产实践-Update 二级索引导致的性能问题排查
chengang
335次阅读
2025-03-28 16:28:31
MySQL8.0直方图功能简介
Rock Yan
269次阅读
2025-03-21 15:30:53
MySQL 有没有类似 Oracle 的索引监控功能?
JiekeXu
254次阅读
2025-03-19 23:43:22
云和恩墨杨明翰:安全生产系列之MySQL高危操作
墨天轮编辑部
239次阅读
2025-03-27 16:45:26
openHalo问世,全球首款基于PostgreSQL兼容MySQL协议的国产开源数据库
严少安
238次阅读
2025-04-07 12:14:29
PG vs MySQL 执行计划解读的异同点
进击的CJR
158次阅读
2025-03-21 10:50:08