MySQL建立表的時候建立索引

2021-08-02 17:22:55 字數 2489 閱讀 2153

要想使用索引提高資料表的訪問速度,首先,需要建立乙個索引,建立索引的方式,有三種。

這種方式最簡單、方便,語法格式

create table 表名(欄位名 資料型別[完整性約束條件],

欄位名 資料型別 [完整性約束條件],

…… 欄位名 資料型別 [unique | fulltext |spatial] index | key

[別名](欄位名1 [(長度)])[asc|desc]);

引數說明

unique——可選引數,表示唯一索引

fulltext——可選引數,表示全文索引

spatitl——可選引數,表示空間索引

index和key——用來表示欄位的索引,二者選一即可

別名——可選引數,表示建立的索引名稱

欄位名1——指定索引對應欄位的名稱

長度——可選引數,用於表示索引的長度

asc和desc——可選引數,其中,asc表示公升序排序,desc表示降序排序。

在t1表中的id欄位上建立索引

檢視索引,使用show create table語句,檢視表的結構,可以看出,id欄位上已經建立了乙個名稱為id的索引。

檢視索引是否使用

可以使用explain進行檢視

可以看出,possible_keys: id和key: id

possible_keys和key的值都為id,說明id索引已經存在,並且已經開始被使用了。

建立乙個表名為t2的表,在表中的id欄位上建立索引名為unique_id的唯一性索引,並且,按照公升序排序。

使用show create table檢視表的結構。

可以看出,id欄位上已經建立了乙個名詞為unique_id的唯一性索引。

建立乙個表名為t3,在表中的name欄位上建立索引名為fulltext_name的全文索引。

使用show create table檢視表的結構。

可以看出,name欄位上已經建立了乙個名為fulltext_name的全文索引。

注意,目前只有myisam儲存引擎支援全文索引,innodb儲存引擎不支援全文索引,因此,在建立全文索引時,一定要注意表儲存引擎的型別,對於經常需要索引的字串、文字資料等資訊,可以考慮儲存到myisam儲存引擎的表中。

建立乙個表名為t4的表,在表中的name欄位上建立索引名為single_name的單列索引。

使用show create table檢視資料表的結構。

可以看出,name欄位上已經建立了乙個名詞為single_name的單列索引,並且,索引的長度為20。

建立乙個表名為t5的表,在表中的id和name欄位上建立索引名為multi的主列索引。

使用show create table檢視表的結構。

可以看出,id和name欄位上已經建立了乙個名為multi的多列索引。

注意,在多列索引中,只有查詢條件中使用了,這些欄位中的第乙個欄位時,多列索引才會被使用。

為了驗證這個說法,將id欄位作為查詢條件,通過explain語句檢視索引的使用情況,執行如下

可以看出,possible_keys和key的值都為multi,說明multi索引已經存在,並且,已經開始被使用了。

但是,如果只使用name欄位作為查詢條件,執行如下。

可以看出,possible_keys和key的值,都為null,說明multi索引還沒有被使用。

建立乙個表名為t6的表,在空間型別為geometry的字段上建立空間索引。

使用show create table檢視表的結構

可以看出,t6表中的space欄位上已經建立了乙個名為sp的空間索引。

注意,建立空間索引時,所在欄位的值不能為空值,並且,表的儲存引擎為myisam。

Mysql建表的時候建立索引

建立表時可以直接建立索引,這種方式最簡單 方便。其基本形式如下 create table 表名 屬性名 資料型別 完整性約束條件 屬性名 資料型別 完整性約束條件 屬性名 資料型別 unique fulltext spatial index key 別名 屬性名1 長度 asc desc 其中,un...

MySql中什麼時候建立索引?

索引 index 是幫助mysql高效獲取資料的資料結構。所以說索引的本質是 資料結構。簡單理解就是 排好序的快速查詢資料的資料結構。一般來說,索引本身也很大,不可能全部儲存在記憶體中,所以通常以索引檔案的形式儲存在磁碟上。高效的檢索資料 通過索引列隊資料排序 更新表 增 刪 改 的同時也需要更新索...

Mysql建表 建立索引

建立表時可以直接建立索引,這種方式最簡單 方便。其基本形式如下 create table 表名 屬性名 資料型別 完整性約束條件 屬性名 資料型別 完整性約束條件 屬性名 資料型別 unique fulltext spatial index key 別名 屬性名1 長度 asc desc uniqu...