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

Leere IN-Klausel-Parameterliste in MySQL

Wenn ich eine Anwendung habe, in der ich den IN baue list dynamisch, und es könnte am Ende leer sein, was ich manchmal mache, ist, die Liste mit einem unmöglichen Wert zu initialisieren und diesen hinzuzufügen. Z.B. Wenn es sich um eine Liste von Benutzernamen handelt, beginne ich mit einer leeren Zeichenfolge, da dies kein möglicher Benutzername ist. Wenn es sich um eine auto_increment-ID handelt, verwende ich -1, da die tatsächlichen Werte immer positiv sind.

Wenn dies nicht machbar ist, weil es keine unmöglichen Werte gibt, müssen Sie eine Bedingung verwenden, um zu entscheiden, ob AND column IN ($values) eingeschlossen werden soll Ausdruck im WHERE Klausel.