MySQL之基础索引

目录

引言

1、创建索引

2、索引的原理

2、索引的类型 

3、索引的使用

1.添加索引

 2.删除索引

3.删除主键索引

4.修改索引

 5.查询索引


引言

当一个数据库里面的数据特别多,比如800万,光是创建插入数据就要十几分钟,我们查询一条信息也要几秒钟,查询多条还会更多

因此我们采用索引机制提升性能

1、创建索引

CREATE INDEX empno_index ON emp(empno)

对表的empno员工id进行创建索引(会增加数据库内存大小,索引本身也会占用空间),此时根据empno来查询信息会非常快,但是创建索引之后,只对创建了索引的列有效,因此我们需要根据其他列来查询信息那就需要重新创建索引

2、索引的原理

当我们使用普通的查询语句:

select * from emp where id = 8

数据库就会进行全表扫描,从第一行进行往下查询,当然,如果查到了也要继续往下查,因为还有查看是否有重复的,比如说性别

索引的结构:

为什么索引会很快,是因为形成了一个索引的数据结构,比如二叉树 

代价:1.磁盘占用、2.对dml(update delete insert)语句的效率有影响,因为改变数据库信息会改变数据库的数据结构 

不过在实际项目中,select的语句会占90%以上,因此综合来说索引还是会大大提升数据库的性能

2、索引的类型 

1.主键索引:主键自动的为主索引(primary key)

2.唯一索引(unique)

3.普通索引(index)

4.全文索引(fulltext)[适用于MyISAM]:一般用Solr和ES

3、索引的使用

1.添加索引

添加唯一索引

场景:id不可能重复,是唯一

create unique index id_index on t25 (id)

添加普通索引

场景:id可能重复

方式1:

creat index id_index on t25 (id)

方式2: 

alter table t25 add index id_index (id)

添加主键索引

alter table t25 add primary key (id)

 2.删除索引

drop index id_index on t25

3.删除主键索引

alter table t25 drop primary key

4.修改索引

先删除,再添加

 5.查询索引

方式1:

show index from t25

方式2:

show indexes from t25

方式3:

show keys from t25

方式4:

desc t25

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Absinthe_苦艾酒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值