一、索引概念
MySQL官方对索引的定义为:索引(Index)是帮助MySQL高效获取数据的数据结构,索引的本质:索引是数据结构。
1.1 索引分类
-
主键索引 (PRIMARY KEY)
- 唯一不可重复,只有一列可以作为主键
-
唯一索引 (UNIQUE KEY)
- 避免重复的列出现,多个列可以标识为唯一索引
-
常规索引 (KEY/INDEX)
- 默认的,使用 index 或者 key 设置
-
全文索引 (FullText)
- 在特定的引擎下才有,比如 MYSIAM
- 快速定位数据
1.2 索引的使用
1、 在创建表的时候给字段增加索引
2、 创建完毕后,增加索引
普通索引的创建
create table user8(id int primary key,
name varchar(20),
email varchar(30),
index(name) --在表的定义最后,指定某列为索引
);
-- 创建完之后增加索引
alter table user9 add index(name);
全文索引创建
-- 当对文章字段或有大量文字的字段进行检索时,会使用到全文索引
CREATE TABLE articles (
id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
title VARCHAR(200),
body TEXT,
FULLTEXT (title,body