mysql第三天

本文探讨了MySQL中索引的创建与设计原则,包括普通索引、唯一索引、主键索引和全文索引等类型。介绍了创建和删除索引的SQL语法,并强调了索引对表空间的影响。通过案例说明了如何使用单列和联合索引提高查询效率。此外,还提及了数据准备阶段的步骤,如创建数据库、表以及模拟数据。

一、索引的创建与设计原则

有时候加索引反而适得其反,所以,要进行索引优化,使查询更加高效;

1、索引的分类

MySQL的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引等。

从功能逻辑上说,索引主要有4种,分别是普通索引、唯一索引、主键索引、全文索引。有的存储引擎不支持

·按照物理实现方式,索引可以分为2种:聚簇索引(主键对应的索引,直接决定数据的存储方式)和非聚簇索引。

按照作用字段个数进行划分,分成单列索引和联合索引(多个字段上)。

索引的介绍,不同的存储引擎支持的索引类型也不一样

2、创建索引

创建约束:1、create table 2、alter table

创建索引:1、create table 2、alter table 3、create index


alter table 表名 add index 索引名(索引字段);  #添加索引
drop index 索引名 on 表名;    #删除索引
alter table 表名 drop index 索引名; #删除索引

创建索引也会占据相应表空间的大小,查询底层idb这个文件,文件也会就变大

 

 根据查询到地结果显示,表名是table,非唯一字段,索引名叫idx_name,数量是1,单列索引,要是联合索引地话就不是1了,对应地字段是book_name。之后用book_name索引查询数据就会非常高效,非常省时。

 声明有唯一索引地字段,在添加数据时,要保证唯一性,但是可以添加null,同时也要保证可以多次添加;

 

 添加主键时,添加了自动创建,这使得无法删除主键。不加自动地条件就可以了;

 按照book_id、book_name,info的顺序,直接执行book_name是肯定不行的;

二、数据准备

第一步:创建数据库、创建表

第二步:创建模拟数据必需的存储函数

 第三步:创建存储过程

 第4步:调用存储过程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值