操作样例
$sql = Yii::$app->db->createCommand()
//update($table, $columns, $condition = '', $params = [])
->update(Account::tableName(), ['user_money' => new \yii\db\Expression('frozen_money + user_money')], ['>','frozen_money',0])
//这里还有其他方法比如 getRawSql()
->execute();
update 参数介绍
update($table, $columns, $condition = ‘’, $params = [])
- $table 表名
表名,全称。例如:‘pre_user’,需要带上前缀!
也可以使用 User::tableName()
-
$columns 更改的列表字段
键值对数组的方式传入,也可像上面的示例的用法 -
$condition 条件
使用where的写法,支持数组,和字符串 -
$params 参数
如果你的条件使用的PDO写法 需要这里输入参数
例如:
$goods_id =122;
Yii::$app->db->createCommand()
->update('goods', ['num'=>1],"good_id=:good_id", array(
':good_id' => $goods_id,
))->execute();
getRawSql()
返回查询的SQL语句,不执行sql