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));