Hintergrund: Ein Freund in der Gruppe sagte, dass es von der Anzahl der Zeichenfolgen in in abhängt, ob in indiziert werden kann oder nicht. Wenn die Länge der Zeichenfolge überschritten wird, wird der Index nicht mehr verwendet.
Tatsächlich ist diese Wahrnehmung falsch. Jeder wurde durch viele erneut veröffentlichte Artikel getäuscht! ! !
Was sich wirklich darauf auswirkt, ob in indiziert wird, hängt vom Anteil der qualifizierten Daten in in ab, der sich darauf auswirkt, ob MySQL indiziert wird!
Mein vorheriger Test hat gezeigt, dass mehr als 40 % der Daten übereinstimmen (dieser Schwellenwert liegt nicht unbedingt bei 40 %, aber mein vorheriger Test lag bei etwa 40 % und der Index wurde nicht verwendet. Dies wird auch von der MySQL-Version beeinflusst) .Danach begann ich, die gesamte Tabelle ohne Indizierung zu verwenden.
Bild 4:
Abbildung 5:
Wie in der obigen Abbildung gezeigt, wenn die Auswirkungen der Tabellenrückgabe und des Überschreibens des Index nicht berücksichtigt werden und die übereinstimmenden Daten in in einen Platz einnehmen Bei einer großen Menge der gesamten Tabellendaten wird ein vollständiger Tabellenscan gestartet. Keine Indizierung.
Darüber hinaus gibt es spezielle Anweisungen1. Wenn in einen einzelnen Wert hat, wird MySQL automatisch auf = optimiert, sodass der Index weiterhin verwendet wird.2 Wenn die Spalten von in und select gleich sind ist nicht nötig. Bei der Rückgabe der Tabelle wird der abdeckende Index verwendet.
Empfohlenes Lernen: „MySQL-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonVerstehen Sie die Verwendung von MySQL nicht mehr falsch!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!