天天看點

第三部分 MySQL索引原理

MySQL索引原理

索引可以提升查詢速度,會影響 where 查詢,以及 order by 排序等。

第1節 MySQL索引類型

  • 從索引存儲結構劃分:B Tree索引、Hash索引、FULLTEXT 全文索引、R Tree索引
  • 從應用層次劃分:普通索引、唯一索引、主鍵索引、複合索引
  • 從索引鍵值類型劃分:主鍵索引、輔助索引(二級索引)
  • 從資料存儲和索引鍵值邏輯關系劃分:聚簇索引(聚集索引)、非聚簇索引(非聚集索引)

普通索引

這是最基本的索引類型,基于普通字段建立的索引,沒有任何限制。

建立普通索引的方法如下:

CREATE INDEX <索引的名字> ON tablename (字段名);
ALTER TABLE tablename ADD INDEX [索引的名字] (字段名);
CREATE TABLE tablename ( [...], INDEX [索引的名字] (字段名) );      

唯一索引

與普通索引類似,不同的就是:索引字段的值必須唯一,但允許有空值。

CREATE UNIQUE INDEX <索引的名字> ON tablename (字段名);
ALTER TABLE tablename ADD UNIQUE INDEX [索引的名字] (字段名);
CREATE TABLE tablena      

繼續閱讀