Php 一次更新1000条记录

Php 一次更新1000条记录,php,updates,Php,Updates,比如说,我有一个有1000个用户id的列表,我想更新他们的付款状态,我向他们付款,现在我想更新他们的完成状态 如果我使用循环,它可以创建1000个更新,这对数据库的要求非常高。有更好的办法吗 我现在看到两个选项,一个带有循环,另一个是动态构建查询字符串,如下所示: $query = UPDATE users SET somecolumn WHERE user_id = '$user_id1' AND user_id = 'user_id2 AND... etc... 您可以在中使用创建查

比如说,我有一个有1000个用户id的列表,我想更新他们的付款状态,我向他们付款,现在我想更新他们的完成状态

如果我使用循环,它可以创建1000个更新,这对数据库的要求非常高。有更好的办法吗

我现在看到两个选项,一个带有循环,另一个是动态构建查询字符串,如下所示:

$query = UPDATE users SET somecolumn WHERE user_id = '$user_id1' AND    user_id = 'user_id2 AND... etc...

您可以在中使用创建查询:


$query=“updateusers SET somecolumn='value',其中用户标识位于(“$user\u id1”,“$user\u id2”)”

实际上,您可以编写“WHERE user_id IN(…)”,然后继续在括号内添加id——这将为您构建查询省去一些麻烦。我可能会这样做+1非常感谢,它看起来不错,然后我需要输入1000个用户id,对吗?在括号内,根据需要在括号中添加尽可能多的用户ID。如果这解决了您的问题,请选择答案。与PHP或任何其他语言一样,您希望使用准备好的语句来实现额外的安全性(将数据视为数据,而不是SQL的直接部分)。这只意味着有多少个占位符就有多少个占位符,然后传入一个用户id数组。