假设我有一个包含1000个用户ID的列表,我想更新他们的付款状态,我付了他们,现在我想将他们的状态更新为已完成。
如果我用循环执行它可以创建1000个更新,这对数据库要求很高。还有更好的方法吗?
我现在看到2个选项,一个带有循环,另一个是动态构建查询字符串,如:
$query = UPDATE users SET somecolumn WHERE user_id = '$user_id1' AND user_id = 'user_id2 AND... etc...
答案 0 :(得分:2)
您可以使用IN:
创建查询$ query ="更新用户SET somecolumn =' value' WHERE user_id IN(' $ user_id1',' $ user_id2')";