【发布时间】:2013-10-02 08:32:20
【问题描述】:
下面的更新查询在 phpmyadmin 中运行。正确更新所有行。
SET @bal = 0;
UPDATE banking SET bank_bal = @bal := @bal + (cr_amt - dr_amt) WHERE `bank_account_id` = 2
我在 yii 中试过上面的查询:
$update = Yii::app()->db->createCommand()
->update('banking',
array(
'bank_bal'=>new CDbExpression("@bal := @bal + (cr_amt - dr_amt)")
),
'bank_account_id=:id',
array(':id'=>$acc)
);
将余额列更新为所有行的 0。我知道@bal 没有设置。我把这个 mysql 行 SET @bal = 0 放在哪里。任何人都可以帮忙。
【问题讨论】:
-
只需在更新查询之前创建单独的 sql 查询 (SET @bal = 0;)