以下的文章主要介紹的是MySQL數據庫索引,即單列索引與多列索引的介紹,以及對多列索引的SQL命令的示例,以下就是這些內容的介紹,望你在浏覽之後會對MySQL數據庫索引的相關內容有更深入的了解。
為了提高搜索效率,我們需要考慮運用多列MySQL數據庫索引。如果為firstname、lastname和age這三個列創建一個多列索引,MySQL只需一次檢索就能夠找出正確的結果!下面是創建這個多列索引的SQL命令:
- ALTER TABLE people ADD INDEX fname_lname_age (firstname,lastname,age);
由於索引文件以B-樹格式保存,MySQL能夠立即轉到合適的firstname,然後再轉到合適的lastname,最後轉到合適的age。在沒有掃描數據文件任何一個記錄的情況下,MySQL就正確地找出了搜索的目標記錄!
那麼,如果在firstname、lastname、age這三個列上分別創建單列索引,效果是否和創建一個firstname、lastname、age的多列MySQL數據庫索引一樣呢?答案是否定的,兩者完全不同。當我們執行查詢的時候,MySQL只能使用一個索引。如果你有三個單列的MySQL數據庫索引,MySQL會試圖選擇一個限制最嚴格的索引。
但是,即使是限制最嚴格的單列索引,它的限制能力也肯定遠遠低於firstname、lastname、age這三個列上的多列索引。
以上的相關內容就是對MySQL數據庫索引的介紹,望你能有所收獲。