1.1索引简介mysql
索引建立在数据表上,是对数据库表中一列或者多列的值进行排序的一种结构,sql
1.2 索引的分类:数据库
mysql的索引能够分为6类,普通索引,惟一性索引,全文索引,单列索引,多列索引,空间索引。ide
1.3 索引的设计原则:spa
选择惟一性索引;为常常要排序,分组,联合操做的字段创建索引,为常做为查询条件的字段创建索引,限制索引的数目,尽可能使用数据量少的索引,尽可能使用前缀来索引,删除再也不使用,或者不多使用的索引。设计
2.1 建立表的时候建立索引,其基本形式以下:排序
create table 表名(属性名 数据类型[约束条件],
……
[unique|fulltext|spatial] index|key
[别名] (属性名1 [(长度)] [asc|desc])索引
其中[unique|fulltext|spatial]为可选参数,分别表示惟一性索引,全文索引与空间索引;index|key 用来指定索引,二者皆可,做用相同;别名用来给建立的索引取一个新的名称。it
eg:建立普通索引
table
- create table index1(id int,
- name varchar(20),
- index(id) );
建立索引,并导入数据之后,能够用explain语句来查看索引是否被使用。
建立惟一性索引:
- create table index2(id int unique,
- name varchar(20),
- unique index index2_id(id asc));
建立全文索引:
- create table index3(id int unique,
- name varchar(20),
- fulltext index index3_name(name));