YII2带和运算符的附加条件

YII2带和运算符的附加条件,yii2,updates,multiple-conditions,Yii2,Updates,Multiple Conditions,我正在以这种方式更新记录: Yii::$app->db->createCommand()->update('table', ['config' => json_encode($array)], 'field1 = :field1', [':field1' => $field1] )->execute(); 我的目标是用和操作符添加一个额外的条件,但我不知道怎么做 我遵循了这个例子: 但是它没有显示太多的可能性。就像一个

我正在以这种方式更新记录:

Yii::$app->db->createCommand()->update('table', ['config' => json_encode($array)], 
        'field1 = :field1', [':field1' => $field1] 
        )->execute();  
我的目标是用
操作符添加一个额外的条件,但我不知道怎么做

我遵循了这个例子:


但是它没有显示太多的可能性。

就像一个数组,每个条件用一个
分隔

就你而言:

Yii::$app->db->createCommand()->update(
  'table', 
   ['config' => json_encode($array)], 
   ['field1' => $field1, 'field2' => $field2]
)->execute();  

注意,使用这种语法,您不需要绑定参数,可以在Yii2对参数进行加密时直接在条件数组中指定它们

就像一个数组,每个条件由一个
分隔

就你而言:

Yii::$app->db->createCommand()->update(
  'table', 
   ['config' => json_encode($array)], 
   ['field1' => $field1, 'field2' => $field2]
)->execute();  
注意,使用这种语法,您不需要绑定参数,可以在Yii2对参数进行加密时直接在条件数组中指定它们

这样试试

Yii::$app->db->createCommand()
             ->update('table', ['config' => json_encode($array)],
             'field1 = :field1 AND field2 = :field2',[':field1' =>  $field1,':field2' =>  $field2])
             ->execute();
这样试试

Yii::$app->db->createCommand()
             ->update('table', ['config' => json_encode($array)],
             'field1 = :field1 AND field2 = :field2',[':field1' =>  $field1,':field2' =>  $field2])
             ->execute();