MySQL索引型別及建立方式的總結

2021-07-24 01:14:01 字數 2280 閱讀 5513

mysql索引型別及建立方式的總結

1、mysql索引型別包括:普通索引、唯一索引、全文索引、單列索引、多列索引和空間索引

2、索引的建立有利有弊,建立索引可以提高查詢速度,但過多的建立索引則會佔據許多的磁碟空間。

3、mysql通過三種方式來建立索引,分別為建立表時建立索引、在已經存在的表上建立索引和通過sql

語句alter table建立索引。

4、不同索引型別的不同建立方式總結如下表所示:

mysql索引型別

建立索引的方式及語法

建立表時建立索引

在已經存在的表上建立索引

sql語句

alter table

建立索引

普通索引

create  table table_name (

屬性名 資料型別,

…… 屬性名 資料型別,

index | key索引名 (

屬性名 [長度

] [asc|desc] ));

create index索引名

on表名 (

屬性名 [長度

] [asc|desc]);

alter table table_nameadd index | key索引名 (

屬性名 [長度

] [ asc|desc]);

唯一索引

create  table table_name (

屬性名 資料型別,

…… 屬性名 資料型別,

unique index | key索引名 (

屬性名 [長度

] [asc|desc] ));

create unique index索引名

on表名 (

屬性名 [長度

] [asc|desc]);

alter table table_nameadd unique index | key索引名 (

屬性名 [長度

] [ asc|desc]);

全文索引

create  table table_name (

屬性名 資料型別,

…… 屬性名 資料型別,

fulltext index | key索引名 (

屬性名 [長度

] [asc|desc] ));

create fulltext index索引名on表名 (

屬性名 [長度

] [asc|desc]);

alter table table_nameadd fulltext index | key索引名 (

屬性名 [長度

] [ asc|desc]);

多列索引

create  table table_name (

屬性名 資料型別,

…… 屬性名 資料型別,

index | key索引名 (

屬性名1 [

長度] [asc|desc],

…… 屬性名n [

長度] [asc|desc] ));

create index索引名

on表名 (

屬性名1 [

長度] [asc|desc],

……  屬性名n [

長度] [asc|desc]);

alter table table_nameadd index | key索引名 (

屬性名1 [

長度] [ asc|desc],

……  屬性名n [

長度] [asc|desc]);

5、查詢索引的方式:show create tabletable_name

6、刪除索引的語法形式:drop indexindex_nameontable_name 

mysql建立索引型別及索引建立的原則

索引型別 unique 唯一索引,一般為主鍵 normal 一般索引,普通字段,可做組合索引 索引方法 btree 1 選擇唯一性索引 唯一性索引的值是唯一的,可以更快速的通過該索引來確定某條記錄。例如,學生表中學號是具有唯一性的字段。為該字段建立唯一性索引可以很快的確定某個學生的資訊。如果使用姓名...

MySQL索引型別及建立 刪除索引

什麼是索引?個人理解,把資料比作詞典,索引就是詞典前面的拼音目錄,可以幫助我們快速查詢資料。本質是儲存引擎用於快速找到記錄的一種資料結構。儲存引擎首先在索引中找到對應值,然後根據匹配的索引記錄找到對應的資料行。索引的實現依賴於儲存引擎,所以不同的儲存引擎所對應不同的索引型別,例如innodb採用的是...

MySQL 索引型別 索引方式

一 索引型別 1 normal 表示普通索引 2 unique 表示唯一索引,不允許重複的索引 3 full text 表示全文索引,用於在一篇文章中,檢索文字資訊的。二 建立索引的原則 1 選擇唯一性索引 2 為經常需要排序 分組和聯合操作的字段建立索引 3 為常作為查詢條件的字段建立索引 4 限...