關於索引的理解(一)

2021-06-15 21:10:25 字數 662 閱讀 5260

什麼是索引?

資料庫中的索引與書籍中的索引類似。在一本書中,利用索引可以快速查詢所需資訊,無須閱讀整本書。在資料庫中,索引使資料庫程式無須對整個表進行掃瞄,就可以在其中找到所需資料。書中的索引是乙個詞語列表,其中註明了包含各個詞的頁碼。而資料庫中的索引是乙個表中所包含的值的列表,其中註明了表中包含各個值的行所在的儲存位置。可以為表中的單個列建立索引,也可以為一組列建立索引;索引採用 b 樹結構。索引包含乙個條目,該條目有來自表中每一行的乙個或多個列(搜尋關鍵字)。b 樹按搜尋關鍵字排序,可以在搜尋關鍵字的任何子詞條集合上進行高效搜尋。例如,對於乙個abc列上的索引,可以在a以及ababc上對其進行高效搜尋。(對於c及b、c卻不高效,個人理解)

當建立資料庫並優化其效能時,應該為資料查詢所使用的列建立索引。

不過,索引為效能所帶來的好處卻是有代價的。帶索引的表在資料庫中會佔據更多的空間。另外,為了維護索引,對資料進行插入、更新、刪除操作的命令所花費的時間會更長。在設計和建立索引時,應確保對效能的提高程度大於在儲存空間和處理資源方面的代價。

mysql復合索引怎麼理解 關於復合索引的一些理解

前面單獨寫了關於復合索引中的最左字首原則的仔細分析,接下來我們就復合索引進行更深一步的了解。這裡的復合索引指的就是組合索引。首先,我們重溫一下復合索引的基本概念,就是在兩個及以上字段建立乙個索引。它的存在主要是為了多條件的查詢,比如說where後面加了好幾個條件,乙個是a欄位相關的,乙個是b欄位相關...

關於資料庫索引的一點理解

做乙個東西用到資料庫的索引,在做東西的過程中,發現自己對這方面的概念還不夠透徹,於是進行了系統的學習,並在這裡總結一下。若有什麼紕漏之處,望不吝賜教並指正,共同進步。參考 1.索引是什麼 mysql官方對索引的定義是 索引 index 是幫助mysql高效獲取資料的資料結構。使用索引可以快速查詢表中...

關於資料庫索引的一點理解

做乙個東西用到資料庫的索引,在做東西的過程中,發現自己對這方面的概念還不夠透徹,於是進行了系統的學習,並在這裡總結一下。若有什麼紕漏之處,望不吝賜教並指正,共同進步。參考 1.索引是什麼 mysql官方對索引的定義是 索引 index 是幫助mysql高效獲取資料的資料結構。使用索引可以快速查詢表中...