Mysql索引學習筆記

2022-08-13 13:39:16 字數 660 閱讀 7008

1.btree索引與hash索引

下列範圍查詢適用於 btree索引和hash索引:

select * from t1     where key_col = 1     or key_col in (15,18,20);

下列範圍查詢適用於btree索引

select * from t1     where key_col > 1     and key_col < 10;

select * from t1 where key_col like 'ab%' or key_col between 'bar' and 'foo';

mysql如何使用索引

索引用於快速找出在某個列中有一特定值的行。不使用索引,mysql必須從第1條記錄開始然後讀完整個表直到找出相關的行。表越大,花費的時間越多。如果表中查詢的列有乙個索引,mysql能快速到達乙個位置去搜尋到資料檔案的中間,沒有必要看所有資料。如果乙個表有1000行,這比順序讀取至少快100倍。注意如果你需要訪問大部分行,順序讀取要快得多,因為此時我們避免磁碟搜尋。

大多數mysql索引(primary key、unique、index和fulltext)在b樹中儲存。只是空間列型別的索引使用r-樹,並且memory表還支援hash索引。

MYSQL索引 學習筆記

索引分類 索引失效 索引帶來的弊端 幫助mysql進行高效查詢的資料結構 有序 在資料之外,資料庫系統還維護著滿足特定查詢演算法的資料結構,這些資料結構以某種方式引用 指向 資料,這樣就可以在這些資料結構上實現高階查詢演算法,這種資料結構就是索引 換言之,索引就是某種資料結構 如下圖所示 左邊是資料...

mysql索引學習筆記

mysql索引學習筆記 1.索引的優劣 優 加快查詢速率 劣 影響對錶的添刪改操作的速率,增大檔案大小 可能索引檔案比資料檔案還大 所以,在往資料庫匯入大量資料之前,應該先暫時刪除索引,資料匯入完成後再統一建立索引。www.2cto.com 2.建立索引的原則 1 不過度索引 2 索引應該建在需要頻...

MySQL索引學習筆記

需求分析 首先,先假設有一張表,表的資料有10w條資料,其中有一條資料是nickname css 如果要拿這條資料的話需要些的sql是 select from award where nickname css 一般情況下,在沒有建立索引的時候,mysql需要掃瞄全表及掃瞄10w條資料找這條資料,如果...