索引分类和建索引命令语句|学习笔记

简介: 快速学习索引分类和建索引命令语句

开发者学堂课程【MySQL 高级应用 - 索引和锁索引分类和建索引命令语句】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/598/detail/8593


索引分类和建索引命令语句


目录

一、mysql 索引分类

1、单值索引

2、唯一索引

3、复合索引

4、基本语法


一、mysql 索引分类

1.单值索引:

即一个索引只包含单个列,一个表可以有多个单列索引。

举例:

一个人可以有两个手机号,但是名字还是同一个人的;一个表中的多个索引最好不要超过五个。

2.唯一索引:

索引列的值必须唯一,但允许有空值。

加了约束之后就是索引,如同银行里的银行卡卡号是不可能重复的,就算全球的名字会重复,卡号不能重复。

3.复合索引:

即一个索引包含多个列。

4.基本语法:

1)创建

CREATE [UNIQUE ]INDEX index Name ON my table(column name(length));

ALTER my table ADD[UNIQUE ] INDEX [index Name] ON (column name(length)).

2)删除

DROP INDEX [index Name] ON my table;

3)查看

SHOW INDEX FROM table _name\G

4)使用 ALTER 命令

有四种方式来添加数据表的索引:

ALTERTABLE to l_ name ADD PRIMARYKEY (column _list):

该语句添加一个主键,这意味着索引值必须是唯一的,且不能为 NULL

ALTER TABLE to l _name ADD UNIQUE index _name (column _it):

这条语句创建索引的值必须是唯一的(除了NULL外,NULL可能会出现多次)

ALTER TABLE tb l _name ADD INDEX index _name (column _list):

添加普通索引,索引值可出现多次。

ALTER TABLE t bl _name ADD FULLTEXT index _name (column _list)

该语句指定了索引为 FULLTEXT,用于全文索引。

相关文章
|
6月前
|
存储 关系型数据库 索引
10. 在一个非主键字段上创建了索引, 想要根据该字段查询到数据, 需要查询几次 ?
在非主键字段上创建索引,查询数据通常需两次。对于MyISAM,先通过索引找到数据行指针,再获取数据;而InnoDB则先找主键ID,再从主键索引中查找数据。
43 0
|
1月前
|
数据库 索引
联合索引和单独列索引哪个更好
【10月更文挑战第15天】联合索引和单独列索引哪个更好
49 2
|
2月前
|
关系型数据库 MySQL 数据库
MYSQL索引的分类与创建语法详解
理解并合理应用这些索引类型,能够有效提高MySQL数据库的性能和查询效率。每种索引类型都有其特定的优势,适当地使用它们可以为数据库操作带来显著的性能提升。
100 3
|
5月前
|
SQL 关系型数据库 MySQL
MySQL数据库——索引(6)-索引使用(覆盖索引与回表查询,前缀索引,单列索引与联合索引 )、索引设计原则、索引总结
MySQL数据库——索引(6)-索引使用(覆盖索引与回表查询,前缀索引,单列索引与联合索引 )、索引设计原则、索引总结
103 1
|
5月前
|
SQL 关系型数据库 MySQL
MySQL数据库——索引(5)-索引使用(上),验证索引效率、最左前缀法则、范围查询、索引失效情况、SQL提示
MySQL数据库——索引(5)-索引使用(上),验证索引效率、最左前缀法则、范围查询、索引失效情况、SQL提示
75 0
|
SQL Java 关系型数据库
索引操作
索引操作
57 0
|
SQL
一条集多表查询、字段与字段拼接、合并每张表共同字段、新增列并赋值的SQL
一条集多表查询、字段与字段拼接、合并每张表共同字段、新增列并赋值的SQL
67 0
测试关于索引的操作- 修改索引
测试关于索引的操作- 修改索引
测试关于索引的操作-创建索引
测试关于索引的操作-创建索引
|
存储 SQL 关系型数据库
下一篇
无影云桌面