在有些查詢過程中,我們查詢數據的時候,為了提高查詢效率,于是我們就會給表字段加索引,那么組合索引就是其中的一種。
使用組合索引的場合是我們需要給表字段添加索引。
組合索引采用的是最左前綴原則,比如我們建立了組合索引(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查詢或者是函數式的查詢,則索引也不會生效。