mysql索引参数_MySQL索引介绍

本文详细介绍了如何在MySQL中创建各种类型的索引,包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引,并提供了在创建表时、已存在表上以及使用ALTER TABLE语句创建索引的方法。同时,还展示了删除索引的操作,帮助读者深入理解数据库索引的使用和管理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

索引由数据库表中一列或者多列组合而成,其作用是提高对表中数据的查询速度。

创建索引是指在某个表的一列或者多列上建立一个索引,用来提高对表的访问速度,

创建索引由三种方法:在创建表的时候创建,在已存在的表上创建和用alter table语句创建。

创建索引的基本语法格式:

e5992e34ee9aad544b7383691f4d5b40.png

ASC参数表示升序排列,DESC参数表示降序排列。

一,在创建表的时候创建索引

1,  创建一个普通索引:

创建一个index1的表,在其id字段上建立索引:

create table index1(id int,namevarchar(20),sex boolean,index(id));

查看索引是否被引用àexplain select * from index1 where id=1;

c2d4c4d74b144f3ac0f0191429bdd04e.png

2,  创建唯一性索引:

创建一个index2表,在id字段上建立唯一性索引,升序排列:

create table index2(id int, namevarchar(20),unique index index2_id(id asc));

创建结果如图:

c2dc29d25b3ba984af53484241b4840c.png

3,  创建全文索引;

目前只有myisam支持全文索引。

创建一个index3表,在info字段建立全文索引:

create table index3(id int,infovarchar(20),fulltext index3_info(info))engine=myisam;

结果如图所示:

c979fd50cbdebd2e76aedf789c5f1a73.png

4,  创建单列索引

创建index4表,在subject字段上建立单列索引:

create table index4(id int,subjectvarchar(20),index index4_sb(subject(10)));

结果如图所示:

750bff416cd31b2ab792a3a233e18d32.png

5,  创建多列索引

创建index5表,在name和sex上建立多列索引:

create table index5(id int, namevarchar(10),sex boolean,index index_nasex(name,sex));

结果如图所示:

c06f084f41bbf9fd8d2d741419055f5a.png

6,  创建空间索引:

创建index6表,在表中space字段建立空间索引,建立空间索引的字段必须有非空约束,存储引擎必须是myisam:

create table index6(id int,space geometrynot null,spatial index index6_space(space))engine=myisam;

结果如图所示:

eff03f781c397e2c6f7fd08c876175d8.png

二,在已存在的表上创建索引

基本语法为:

34a8ef69f248baddec7e16a403d3be08.png

首先创建index7,不设置索引:

e44dae7e788edb51794d462bb94c317d.png

为index7在id字段加一个普通索引:

create index index7_id on index7(id);

变化后结果显示:

8f4eb32e965aebbf56e219bd8708d135.png

三,用alter table 语句创建索引

基本语法:

0a1db37cc72a0e6df122942133257ab0.png

创建一个index8,不设置索引:

如下:

0b5814689047643613b154dccd86e8fd.png

为name加一个索引:

alter table index8 add indexindex8_name(name(20));

变化如下:

ef19b94dc2b92c905c5aeebde347d0b1.png

四,删除索引

drop index索引名 on 表名;

索引就先看到这里了,接下来了解一下MySQL的视图和触发器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值