dedlfix: MySQL Indexnutzung

Beitrag lesen

Tach!

Sortieren geht mit ORDER BY. Die Angabe eines Index ist nur eine Hilfe für den Optimizer, dass er einen bestimmten Index beim Ausführen der Query berücksichtigen soll. Auswirkungen auf die Sortierung hat das keine.

Index und Ordnung voneinander zu trennen ist aber doch wohl sehr verwissenschaftlicht gedacht, oder?

Der Index wird ja auch verwendet, wenn einer passend zur ORDER-BY-Klausel existiert. Ein Index ist aber keine Notwendigkeit, um nach einem bestimmten Kriterium sortieren zu können. Und man kann auch Sortierkriterien angeben für die kein Index angelegt werden kann, RAND() zum Beispiel. Ebenso kann man berechnete Ergebnisse in der SELECT-Klausel haben, nach denen sortiert werden kann, für die man aber ebenfalls keinen Index anlegen kann. Insofern ist da eine Trennung keineswegs nur akademischer Natur.

Sowie ich mittels eines Index nicht nur auf ein Element in einer Menge zugreifen kann, sondern dieses auch einen Vorgänger und einen Nachfolger hat, ist es doch schon passiert.

Ja, wenn. Aber das ist nicht zwangsläufig gegeben.

Und warum soll man einen ohnehin festgelegten Namen für den Index nicht für die gleichlautende Zusammensetzung bei der Sortierung benutzen können? Das ist augenscheinlich ein Manquo von MySQL.

Wenn, dann ist das ein Manko in SQL.

dedlfix.