Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Laravel 5 eloquent woIn

Es ist ziemlich schwer zu verstehen, was Sie erreichen wollen, aber ich werde es versuchen. Zunächst einmal, wie @particus erwähnte, ist der beste Weg, eine Pivot-Tabelle zu erstellen, wenn Sie sich nicht um solche Dinge kümmern müssen.

Aber die Lösung, wenn Sie eine Liste von IDs in durch Kommas getrennten Spalten haben, besteht darin, keine Werte wie

zu speichern
1,2,3

aber immer , hinzufügen am Anfang und am Ende, also sollte es in diesem Fall lauten:

,1,2,3,

Auf diese Weise, wenn Sie in Ihrer Tabelle ,19,2,3, haben und Sie möchten nach dem Wert 9 suchen , sollten Sie suchen für ,9, verwenden Zeichenkette, zum Beispiel:

$id = 9; 
$items = Items::where('column', LIKE '%,'.$id.',%')->get();

Jetzt wird für die obige Zeichenfolge kein Datensatz gefunden, aber wenn Sie ,9,2,3, haben oder einfach ,9, der gewünschte Datensatz wird gefunden.