2
對於這個特殊的SQL查詢:SQL指數,屬性序
select firstName
from students
where lastName = "john"
正在建設一個B +樹索引上(姓氏,名字)不是建立在(名字,姓氏),爲什麼索引快?
對於這個特殊的SQL查詢:SQL指數,屬性序
select firstName
from students
where lastName = "john"
正在建設一個B +樹索引上(姓氏,名字)不是建立在(名字,姓氏),爲什麼索引快?
INDEX name (lastName,FirstName)
將快於INDEX name (FirstName,lastName)
它也可用於指定只是一個lastName的值查詢,因爲該列是從MySQL manual
指數的最左邊前綴
如果該表具有多列索引,則優化程序可以使用 索引的任何最左前綴來查找行。例如,如果 在(col1,col2,col3)上有三列索引,則已在(col1),(col1,col2)和(col1,col2,col3)上爲 搜索功能編制索引。
(姓氏,名字)會更好,因爲你在'lastName'列有'WHERE'條件。 – MarcinJuraszek 2013-04-04 05:30:27