技術要點如下:
在MySQL資料庫中,索引和表、檢視、同義詞等類似是資料庫“物件”的一種。可看做字典的目錄。是對資料庫表中一列或者多了的值進行排序後的一種結構,其作用就是提高表中的資料查詢速度。MySQL中的索引分為如下幾種:
1. 普通索引
普通索引是由key或index定義個索引,它是MySQL中的基本索引型別,可以建立在任何資料型別中。其值是否唯一和非空有欄位本身的約束條件所決定。例如,在student表的id欄位上建立一個普通索引,查詢記錄時,就可以根據該索引查詢,從而提高效率。
2. 唯一性索引
唯一性索引是指由unique定義個索引,該索引所在欄位的值必須是唯一的。例如,在grade表的stu_id欄位上建立唯一性索引,那麼stu_id欄位的值就必須是唯一的。
3. 全文索引
全文索引是由fulltext定義的索引,它只能建立在char、varchar或text型別的欄位上。並且現在只有MyISAM儲存引擎支援全文索引。
4.單列索引
單列索引指的是在表中單個欄位上建立索引,它可以是普通索引、唯一索引或者全文索引,只有保證該索引只對應表中一個欄位即可。
5.多列索引
多列索引是指在表的多個欄位上建立索引,只有在查詢條件中使用了這些欄位中的第一個欄位時,該索引才會被使用。如,在student表的id、name和score欄位上建立一個多列索引,那麼只有查詢條件中使用了id欄位時,該索引才會被使用。
相較於單列索引,當我們頻繁的需要同時檢索表中多列時,多列索引的效率會高很多。
技術要點如下:
在MySQL資料庫中,索引和表、檢視、同義詞等類似是資料庫“物件”的一種。可看做字典的目錄。是對資料庫表中一列或者多了的值進行排序後的一種結構,其作用就是提高表中的資料查詢速度。MySQL中的索引分為如下幾種:
1. 普通索引
普通索引是由key或index定義個索引,它是MySQL中的基本索引型別,可以建立在任何資料型別中。其值是否唯一和非空有欄位本身的約束條件所決定。例如,在student表的id欄位上建立一個普通索引,查詢記錄時,就可以根據該索引查詢,從而提高效率。
2. 唯一性索引
唯一性索引是指由unique定義個索引,該索引所在欄位的值必須是唯一的。例如,在grade表的stu_id欄位上建立唯一性索引,那麼stu_id欄位的值就必須是唯一的。
3. 全文索引
全文索引是由fulltext定義的索引,它只能建立在char、varchar或text型別的欄位上。並且現在只有MyISAM儲存引擎支援全文索引。
4.單列索引
單列索引指的是在表中單個欄位上建立索引,它可以是普通索引、唯一索引或者全文索引,只有保證該索引只對應表中一個欄位即可。
5.多列索引
多列索引是指在表的多個欄位上建立索引,只有在查詢條件中使用了這些欄位中的第一個欄位時,該索引才會被使用。如,在student表的id、name和score欄位上建立一個多列索引,那麼只有查詢條件中使用了id欄位時,該索引才會被使用。
相較於單列索引,當我們頻繁的需要同時檢索表中多列時,多列索引的效率會高很多。