2009-07-06 17 views
5

Mysqlは、インデックスを実装するためにB +ツリーを使用します。プライマリインデックスがタイプ(名前、年齢、都市)であるとします。誰かがこれらの種類のキーでMysqlがB +ツリーを実装する方法をいくつかの光を投げることができますか?Mysql B +ツリーの実装

私の勘違いは、タプル全体をキーとして扱い、部分的な順序のように扱うことです。例:

(ジョン、24、ニュージャージー州)<(ジョン、24、ニューヨーク)<(ジョン、25、ニュージャージー州)<(ジョン、25、ニューヨーク)

答えて

4

(ジョン、 24、ニュージャージー州)<(ジョン、24、ニューヨーク)<(ジョン、25、ニュージャージー州)<(ジョン、25、ニューヨーク)

あなたが横たわっていたために重要である理由はい、それはですキーの列を削除します。

キーの始まりを見て満足できる値を探していないと、キーは役に立ちません。 ageおよび/またはcityをフィルタリングすると、nameはフィルタリングされませんが、キーは使用できません。一方、nameのみをフィルタリングする場合は、そのキーが使用されます。