星際守望者中繼站地圖解析 中繼站什麼樣子
阿新 • • 發佈:2022-04-05
索引
概述
索引(Index) 是幫助 MySQL 高效獲取資料的資料結構.
索引的本質:索引是資料結構,可以理解為"排好序的快速查詢結構"
,滿足特定查詢演算法。
優點
- 類似大學圖書館建書目索引,提高資料檢索的效率,降低資料庫的IO成本。
- 通過建立唯一索引,可以保證資料庫表中每一行資料的唯一性。
- 在實現資料的參考完整性方面,可以加速表和表之間的連線。
- 在分組和排序操作時,可以顯著減少時間。
缺點
- 建立索引和維護索引需要消耗時間,隨著資料量的增加,所消耗的時間也會增加。
- 索引需要佔用 磁碟空間,除了資料表佔用資料空間之外,每一個索引還要佔用一定的物理空間。
- 雖然大大的提高了查詢速度,同時卻會降低更新表的速度
索引的宣告與使用
索引分類
MySQL 的索引包括 普通索引
、全文索引
、單例索引
、多列索引
和 空間索引
等。
- 從 功能邏輯 上說,索引分為 4 種:普通索引、唯一索引、主鍵索引、全文索引;
- 從 物理實現 上說,索引分為 2 中:聚簇索引、非聚簇索引;
- 從 作用欄位個數 上說,索引分為 2 中:單例索引、聯合索引。
普通索引
建立普通索引的時候,不附加任何限制條件,只適用於提高查詢效率。
唯一索引
使用 UNIQUE 引數 可以設定索引為唯一性索引,在建立唯一性索引的時候,限制該索引的值必須是唯一的,但允許有空值。
單例索引
在表中的單個欄位上建立索引。
多例索引
在表中的 多個欄位組合 上建立索引,使用組合索引時遵循 最左字首原則。
全文索引
全文索引(也稱全文檢索)是目前 搜尋引擎 使用的一種關鍵技術。它能夠利用【分詞技術】等多種演算法智慧分析出文字文字中關鍵詞的頻率和重要性,然後按照一定的演算法規則智慧的篩選出我們想要的搜尋結果。全文索引非常適合大型資料集,對於小的資料集,它的用處比較小。
使用引數 FULLTEXT 可以設定索引為全文索引。全文索引只能建立在 CHAR、VARCHAR 或 TEXT 型別上,查詢資料量較大的字串型別的欄位時,使用全文索引可以提高查詢速度。