mysql tree查詢,mysql最左原則原理?
最左前綴匹配原則,非常重要的原則,mysql會一直向右匹配直到遇到范圍查詢(>、<、between、like)就停止匹配,比如a = 1 and b = 2 and c > 3 and d = 4 如果建立(a,b,c,d)順序的索引,d是用不到索引的,如果建立(a,b,d,c)的索引則都可以用到,a,b,d的順序可以任意調整。
最左匹配原則都是針對聯合索引來說的,所以我們可以從聯合索引的原理來了解最左匹配原則。我們都知道索引的底層是一顆 B+ 樹,那么聯合索引當然還是一顆 B+ 樹,只不過聯合索引的鍵值數量不是一個,而是多個。構建一顆 B+ 樹只能根據一個值來構建,因此數據庫依據聯合索引最左的字段來構建 B+ 樹。