Kann MySQL FIND_IN_SET dazu gebracht werden, Indizes auszunutzen?
In dieser Frage untersuchen wir das Verhalten der FIND_IN_SET-Funktion von MySQL im Vergleich zur IN Operator, der Indizes für einen schnelleren Datenabruf verwendet.
Verstehen des Problems
Wie in den bereitgestellten Explain-Ergebnissen dargestellt, nutzt FIND_IN_SET nicht den Primärschlüsselindex, was dazu führt suboptimale Leistung. Das Ziel besteht darin, eine Möglichkeit zu finden, eine ähnliche Leistung wie der IN-Operator zu erreichen, der Indizes effektiv nutzt.
Lösung
Während FIND_IN_SET nicht direkt für die Verwendung von Indizes optimiert werden kann, Eine Problemumgehung besteht durch die Verwendung vorbereiteter Anweisungen.
Implementierung
Dieser Ansatz erreicht das gewünschte Verhalten durch die Verwendung von Indizes, ähnlich dem IN-Operator, und ermöglicht gleichzeitig die Parametrisierung der Abfrage mit einem Komma- Getrennte Zeichenfolge.
Zusätzliche Überlegungen
Das obige ist der detaillierte Inhalt vonKann die FIND_IN_SET-Funktion von MySQL Indizes nutzen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!