索引是什么?
用于提高mysql服务器效率的数据库对象
使用索引的优势: 索引是内部结构,mysql用它基于索引列的值来提供对表中记录的快速访问,缩短了MySQL服务器搜索查询将返回记录所用的时间,从而提高效率。
用户执行查询后,MySQL服务器将执行以下步骤:
- 搜索查询的 from 子句中指定的表
- 扫描表中所有记录以获取所需记录和/或根据查询中指定的条件(如果有)对记录进行精化
- 返回结果集
MySQL支持以下类型的索引
- 主键
- 外键
- 唯一
- 常规
- 全文
创建索引
索引就好比在新华字典当中的拼音/部首检字法一般
- 创建常规索引 :
基本语法
CREATE TABLE <table_name>{
{INDEX|KEY}[<index_name>](column_name)[{,<column_name>}]
}
实例代码
表示在对sno这一列加上了一个名字为suoyin的索引
create table if not exists student(
sname int not null,
sno int not null,
INDEX suoyin (sno)
)ENDING = myisam; /*myisam表示存储引擎*/
- 创建全文索引
基本语法
CREATE TABLE <table_name>(
FULLTEXT[index][<index_name>](<column_name>[{,<column_name>}])
)
实例代码
create table if not exists student(
sname int not null,
sno int not null,
INDEX suoyin (sno),
FULLTEXT quanwen (sname)
)ENDING = myisam; /*myisam表示存储引擎*/