Ja, MySQL verwendet Ihren Index, um die Informationen zu sortieren, wenn die Reihenfolge nach der sortierten Spalte erfolgt.
Auch wenn Sie Indizes in allen Spalten haben, die Sie zu SELECT hinzugefügt haben -Klausel lädt MySQL die Daten nicht aus der Tabelle selbst, sondern aus dem Index (was schneller ist).
Der Unterschied zwischen kombinierten und separaten Indizes besteht darin, dass MySQL nicht mehr als einen verwenden kann Index pro Abfrage. Wenn Ihre Abfrage also nach vielen Spalten filtert und Sie möchten, dass sie korrekt indiziert wird, müssen Sie einen kombinierten Index aller Spalten erstellen.
Aber bevor Sie viele Indizes zu Ihren Tabellen hinzufügen, denken Sie daran, dass jeder Index Einfüge-/Aktualisierungs-/Löschvorgänge langsamer macht.
Ich würde auch Hochleistungs-MySQL sehr empfehlen Buch von O'Reilly, das all diese Themen und viele andere Tipps, die Sie brauchen, ausführlich behandeln wird zu wissen, wie man MySQL wirklich bis zum Limit nutzen kann.