0
基于下面的代码,我想更新所有在客户状态1,其中status = 2.但是,我想运行下面的代码customer_id不在(1,3,5, 8)。Yii 2更新全部不在
$customerNotIn = array(1, 3, 5 ,8);
Customer::updateAll(['status' => 1], 'status = 2');
我该如何做到这一点?
基于下面的代码,我想更新所有在客户状态1,其中status = 2.但是,我想运行下面的代码customer_id不在(1,3,5, 8)。Yii 2更新全部不在
$customerNotIn = array(1, 3, 5 ,8);
Customer::updateAll(['status' => 1], 'status = 2');
我该如何做到这一点?
条件可以在你放什么在->where()
的格式,所以你的情况应该是:
$customerNotIn = array(1, 3, 5 ,8);
Customer::updateAll(['status' => 1], ['AND',
'status = 2',
['NOT IN', 'status', $customerNotIn]
]);
这是不正确的。这将变为状态1,而不是1,3,5,8。我想要的是将状态更改为2.但不在customer_id = 1,3,5,8 – CloudSeph
您的意思是你需要两个条件?我不明白。什么样的最终状态应该是什么以及在什么条件下? – gmc
是的。我需要两个条件 – CloudSeph