Suche nach Werten in durch Kommas getrennten MySQL-Feldlisten
Dieses Problem tritt auf, wenn ein MySQL-Feld durch Kommas getrennte IDs enthält, z. B. „ 12,13,14,16.“ Der Versuch, in diesem Feld mit dem LIKE-Operator und einer einfachen Teilzeichenfolgenübereinstimmung zu suchen, z. B. „SELECT ... WHERE field LIKE '%1%'“, führt zu schlechten Ergebnissen, da häufige IDs in einem bestimmten Bereich häufig vorkommen.
Um dieses Problem effektiv zu lösen, verwenden Sie die Funktion FIND_IN_SET. Diese Funktion prüft, ob ein angegebener Wert in einer durch Kommas getrennten Zeichenfolge vorhanden ist, und gibt die Position dieses Werts zurück, wenn er gefunden wird. Die folgende Abfrage findet beispielsweise effizient Zeilen, in denen der Wert „1“ im Feld „Feld“ vorhanden ist:
SELECT ... WHERE FIND_IN_SET('1', field)
Diese Lösung führt eine präzise Filterung durch, indem nach dem genauen Wert innerhalb des angegebenen durch Kommas getrennten Werts gesucht wird Liste, um Fehlalarme zu verhindern, die mit dem LIKE-Operator auftreten.
Das obige ist der detaillierte Inhalt vonWie kann man effizient nach Werten in durch Kommas getrennten MySQL-Feldlisten suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!