在一个sql查询中更新多行

Sou*_*rce 3 php mysql sql

当提醒发送给客户时,我必须为客户列表更新任意数量的行。我可以通过一个foreach循环来实现这一点,但是我确信必须有一种通过on query做到这一点的方法。

这是目前有效的

foreach($customer_id_arr as $c) mysqli_query($con,"UPDATE crm_customers SET customer_reminded=1 WHERE customer_id=$c");
Run Code Online (Sandbox Code Playgroud)

如何在一个查询中做到这一点?

esq*_*qew 5

您可以implode()为此:

mysqli_query($con,"UPDATE crm_customers SET customer_reminded=1 WHERE customer_id IN (" . implode(",",$customer_id_arr) . ")";
Run Code Online (Sandbox Code Playgroud)

值得一提的是,您可能不使用预备语句就可以进行SQL注入。