SQL „like“ vs. „=“ Leistung: Kontextanalyse
Die Frage, ob „like“ oder „=“ wann eine bessere Leistung erbringt Die Verwendung von SQL-Platzhaltern wurde in der Vergangenheit bereits thematisiert, aber gängige Meinung ist, dass „=“ schneller ist. Es ist jedoch wichtig, den spezifischen Kontext der Abfrage zu berücksichtigen.
In dem Szenario, in dem eine Spalte eine begrenzte Anzahl fester, fest codierter Varchar-Bezeichner enthält und die Aufgabe darin besteht, alle Zeilen auszuwählen, die mit einem dieser Bezeichner übereinstimmen, Es könnte den Anschein haben, dass „Gefällt mir“ einen Vorteil hätte. „Gefällt mir“ muss nur ein paar Anfangszeichen auf eine Übereinstimmung testen, während „=“ die gesamte Zeichenfolge vergleichen muss.
Wie jedoch in einem Artikel von John Nelson (archiviert unter https://web.archive.org/web/20150209022016/http://myitforum.com/cs2/blogs/jnelson/archive/2007/11/16/108354.aspx), die Regeln für die Indexnutzung mit „Gefällt mir“ sind nuanciert:
Daher hängt die Leistung von „like“ im Vergleich zu „=“ vom spezifischen Abfragekontext ab , die Position von Platzhaltern und das Vorhandensein von Indizes. Im Fall einer begrenzten Anzahl fest codierter Bezeichner kann „like“ bei einem vollständigen String-Vergleich tatsächlich eine schnellere Leistung als „=“ erbringen. Es ist jedoch wichtig, den spezifischen Anwendungsfall zu bewerten und eine Indexoptimierung in Betracht zu ziehen, um den optimalen Ansatz zu ermitteln.
Das obige ist der detaillierte Inhalt vonSQL „LIKE' vs. „=': Wann ist eines schneller als das andere?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!