Diese Tabelle verfügt über eine Textspalte, die Verweise auf andere Datensätze im CSV-Format speichert, zum Beispiel:
+----+----------------+ | id | linked_folders | +----+----------------+ | 90 | NULL | | 91 | NULL | | 92 | 123,1,4,40 | | 93 | 123,1 | | 94 | NULL | | 95 | 235,8 | | 96 | 90 | | 97 | NULL | | 98 | NULL | | 99 | NULL | +----+----------------+ $id = 90; SELECT * FROM my_table WHERE id = $id OR $id is in linked_folders
Die obige Pseudoabfrage sollte die Zeilen 90 und 96 zurückgeben.
Ich möchte einen Abgleich durchführen, wenn ein bestimmter, exakter Wert, den ich habe, in diesem Feld enthalten ist.
Ich denke, dass die Verwendung von LIKE möglicherweise nicht funktioniert, weil ich nicht weiß, ob das Komma davor oder danach existiert.
Habe ich Alternativen?
可以使用
FIND_IN_SET
来实现:这里有演示