mysql組合索引

在有些查詢過程中,我們查詢數據的時候,為了提高查詢效率,于是我們就會給表字段加索引,那么組合索引就是其中的一種。

使用組合索引的場合是我們需要給表字段添加索引。

組合索引采用的是最左前綴原則,比如我們建立了組合索引(name, age, id),那么我們使用者三個條件的時候就可以使用組合索引,從而更高的提升效率。

但是使用組合索引的時候有一些注意事項,當遇到以下條件時索引會有一些問題

1、like查詢,并且是%在前面,這個時候索引是不生效的

2、范圍查找,比如>,<,IN什么情況下是范圍查詢,如果有order by排序時,多個等于條件查詢就是范圍查詢,沒有order by排序就沒有限制。比如,如果遇到***where name=‘xiaoming’ and age>15 and id=1,這個時候id這個索引是不生效的。但是如果是***where name=‘xiaoming’ and id=1 and age>15則所有的索引都會生效。

3、如果使用的是or查詢或者是函數式的查詢,則索引也不會生效。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容