使用CakePHP中的WHERE IN子句更新

iyzzxitl  于 2022-11-24  发布在  PHP
关注(0)|答案(2)|浏览(140)

我正在尝试用相同的值更新数据库中的多个记录。有没有可能有WHERE IN('1','2','3','4','5' ...);类型的查询或WHERE id = 1 OR id = 2 ...,以便这可以很快发生。
我目前正在尝试使用saveAll更新130行相同的值,速度相当慢。

ocebsuys

ocebsuys1#

您是否尝试过全部更新?

$this->updateAll(
    array(
       // new values
    ),
    array('id' => array(1,2,3,4,5,6))
);
kq4fsx7k

kq4fsx7k2#

值得注意的是,在updateAll()的内部运行以下代码。

$statement = $this->query()
    ->update()
    ->set($fields)
    ->where($conditions)
    ->execute();

$statement->closeCursor();

return $statement->rowCount();

相关问题