1.1索引簡介
索引創建在數據表上,是對數據庫表中一列或者多列的值進行排序的一種結構,
1.2 索引的分類:
mysql的索引可以分爲6類,普通索引,唯一性索引,全文索引,單列索引,多列索引,空間索引。
1.3 索引的設計原則:
選擇唯一性索引;爲經常要排序,分組,聯合操作的字段建立索引,爲常作爲查詢條件的字段建立索引,限制索引的數目,儘量使用數據量少的索引,儘量使用前綴來索引,刪除不再使用,或者很少使用的索引。
2.1 創建表的時候創建索引,其基本形式如下:
create table 表名(屬性名 數據類型[約束條件],
……
[unique|fulltext|spatial] index|key
[別名] (屬性名1 [(長度)] [asc|desc])
其中[unique|fulltext|spatial]爲可選參數,分別表示唯一性索引,全文索引與空間索引;index|key 用來指定索引,兩者皆可,作用相同;別名用來給創建的索引取一個新的名稱。
eg:創建普通索引
- 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));