幾乎所有的索引都是建立在字段之上
索引:系統根據某種演算法,將已有的資料(未來可能新增的資料),單獨建立乙個檔案:檔案能夠實現快速的匹配資料,並且能夠快速的找到對應表中的記錄
索引的意義
1. 提公升查詢資料的效率
2.約束資料的有效性(唯一性等)
增加索引的前提條件,索引本身就會產生索引檔案(有時候有可能比資料檔案還大),會非常耗費磁碟空間
如果某個字段需要作為查詢的條件經常使用,那麼可以使用索引(一定會想辦法增加);
如果某個字段需要進行資料的有效性約束,也可以使用索引(主鍵,唯一鍵)
mysql中提供了多種索引
1. 主鍵索引:primary key
2. 唯一索引:unique key
3. 全文索引:fulltext index
4. 普通索引:index
全文索引最大問題:在於如何確定關鍵字
英文很容易:英文單詞與單詞之間有空格
中文很難:沒有空格,而且中文可以各種隨意組合(分詞:sphinx)
mysql索引簡單介紹
索引從本質上來說也是一種表,這樣的表儲存被列為索引的列項值和指向真正完整記錄的指標。索引對使用者透明。僅僅被資料庫引擎用來加速檢索真實記錄。有索引的表。insert和update操作會耗費很多其它時間而select則會變快。由於insert和update操作同一時候也要insert和update索引...
MySQL之索引介紹
在關聯式資料庫中,索引是一種單獨的 物理的對資料庫表中一列或多列的值進行排序的一種儲存結構,它是某個表中一列或若干列值的集合和相應的指向表中物理標識這些值的資料頁的邏輯指標清單。索引的作用相當於圖書的目錄,可以根據目錄中的頁碼快速找到所需的內容。索引分類 從資料結構角度來分 btree 索引 has...
索引簡單介紹
今天面試時被問到索引的原理,之前在學習資料庫的時候,研究了一下,但是不經常使用,或者說使用建立索引的時候也就是幾句命令,所以對原理性的東西並沒有掌握。因此用一篇簡短的文章來簡單回顧一下索引的基本知識,等抽空研究原理。首先說說什麼是索引,類似與書的目錄。概念 1.索引是對資料庫表中一列或多列的值進行排...