2016-05-03 16 views

Antwort

0

Die meisten MySQL-Indizes sind als BTrees strukturiert. (Siehe Wikipedia)

(ich ohne FULLTEXT und SPATIAL Indizes aus dieser Diskussion.)

InnoDB des PRIMARY KEY ist ein BTree und "geclustert" mit den Daten. Das heißt, die Daten werden in der Reihenfolge PK im BTree gespeichert.

InnoDB "Sekundärschlüssel" und alle MyISAM-Indizes werden in separaten BTree-Strukturen gespeichert.

Im Blattknoten eines MyISAM-Index ist ein Offset in die Datendatei, wo die gesamte Zeile gespeichert ist. Im Blattknoten eines InnoDB-Sekundärindex befindet sich eine Kopie der PRIMARY KEY-Spalte (n).

Alle Indizes werden "aufsteigend" in numerischer (wenn eine numerische Spalte) oder Kollation (wenn eine Zeichenfolge) sortiert.

(Ich weiß nicht, was Sie mit "logisch" meinen, aber vielleicht habe ich es beantwortet.)