WO in INSERT MySQl & PHP

375
Alex Statnii

In MySql ist es möglich, UPDATE mit WHERE für mehrere Benutzer zu machen, z.

 $users = ['user1', 'user2', 'user3']; $amount = 25; $users = implode(", ",array_keys($users)); "UPDATE balances SET balance = (balance + $amount) WHERE obj_id IN ($users)" 

Die Frage ist: Ist es möglich, eine WHERE IN-Einfügung ähnlich dem Beispiel von unten zu machen, ohne foreach-Schleifen vor der Abfrage zu verwenden?

 "INSERT INTO balances ('balance', 'user_id') VALUES (($amount), user_id) WHERE user_id IN ($users)" 
0
Nein, weil die Anweisung keine Kontrolle hat, ohne einen genauen Index anzugeben, welches Element im Array $ users als Wert für where verwendet werden soll. Sie können eine "IF" -Anweisung in SQL verwenden: Siehe https://stackoverflow.com/questions/3432/multiple-updates-in-mysql Kinnectus vor 5 Jahren 0

0 Antworten auf die Frage