【发布时间】:2014-08-21 11:41:46
【问题描述】:
我想更新模型。我有这样的查询
UPDATE mymodels SET `myfield` = 100 WHERE `id`=12 OR `id`=13 OR `id`=14
// also the same:
UPDATE mymodels SET `myfield` = 100 WHERE `id` IN (12,13,14)
我试过这个:
$this->MyModel->updateAll(
// fields
array('MyModel.myfield' => 100),
// conditions
array('MyModel.id' => 12)
);
但我需要更新 20 条不同的记录。
记录 id 是这样的 12, 13, 14 ....
【问题讨论】:
-
表示小于或等于。您不想要 12 或更大 (>=) 吗?不过,您可能需要 IN 运算符。我相信正确的语法是定义一个id的数组
$ids = array(12,13,14);然后在条件参数array('MyModel.id' => $ids)中使用它 -
抱歉有错别字。我修正了更大和等号。