[英]Query efficiency
$_query = 'UPDATE ' . TABLE_A1 . ' SET active=0 WHERE user_id IN ( ';
foreach ($newUsers as $newUser) {
$_query.=$newUser. ' ,';
}
$_query = rtrim($_query, ',');
$_query .=')';
这是一次一次编辑多个表条目的高效方法吗? 有更快的方法吗?
谢谢
是的,这非常出色。 我不知道有什么更快的方法。
UPDATE很好。 通过使用implode
而不是遍历该数组,可以使您的PHP更加优雅。
即:
$_query = 'UPDATE ' . TABLE_A1 . ' SET active=0 WHERE user_id IN (' . implode(',', $newUsers) . ');'
您可以在查询中添加另一个约束,这可以加快查询速度,但这取决于您如何获得用户...
如果您有一些已经为“ active = 0”的用户,则可以通过添加以下方式将其排除在查询之外
....其中active <> 0和user_id在(...
这将防止对已经具有正确值的字段进行更新。 我在一个系统上有一个类似的查询,它正在更新数百万条包含正确信息的记录。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.