Heim >Datenbank >MySQL-Tutorial >Wie kann ich mehrere String-Suchen mit MySQLs find_in_set durchführen?
Frage:
Die Funktion find_in_set von MySQL kann nach einer einzelnen Zeichenfolge in einer CSV-Sammlung (Comma-Separated Value) suchen. Aber wie nutzen Sie die Möglichkeit, nach mehreren Zeichenfolgen gleichzeitig zu suchen?
Antwort:
Obwohl MySQL nicht über native Funktionen zur Unterstützung der Suche nach mehreren Zeichenfolgen verfügt, können Sie die folgenden Techniken verwenden:
<code class="language-sql">WHERE CONCAT(",", `setcolumn`, ",") REGEXP ",(val1|val2|val3),"</code>
Diese Methode verkettet die Ziel-CSV-Sammlung mit Kommas, einschließlich vorangestellter und nachfolgender Kommas. Überprüfen Sie dann, ob die resultierende Zeichenfolge mit einem gewünschten Suchzeichenfolgenmuster übereinstimmt, getrennt durch ein Pipe-Symbol (|). Zum Beispiel:
<code class="language-sql">WHERE CONCAT(",", `tags`, ",") REGEXP ",(red|green|blue),"</code>
Diese Abfrage gibt die Zeilen zurück, in denen die Spalte tags
einen der Werte „rot“, „grün“ oder „blau“ enthält.
Das obige ist der detaillierte Inhalt vonWie kann ich mehrere String-Suchen mit MySQLs find_in_set durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!