2014-06-18 35 views
1

他在那裏!Yii乘以/除以updateAll/updateCounters

我想知道在Yii框架中是否有一個函數允許您乘數或除數據庫中的所有行。我知道有是updateAll功能,它允許您更改值並updateCounters,讓你加/減一個數到所有這樣的:

Items::model()->updateAll(array('tokens' => 5), ''); 
    Items::model()->updateCounters(array('tokens' => -5,), ''); 

但是我想做的事,就是乘以1.5的值。我嘗試了不同的東西,但不幸的是,我似乎無法得到它的工作..

Items::model()->updateCounters(array('tokens' => * 1.5,), ''); 
    Items::model()->updateAll(array('tokens' => 'tokens*1.5'), ''); 

如果有人可以幫我找到解決方案會很好。

+0

包裹表達你想乘這已經在數據庫中的價值? – jagsler

+0

他傑克斯勒,是的! – Shark

回答

1

嘗試在CDbExpression

Items::model()->updateAll(array('tokens' => new CDbExpression('tokens*1.5'))); 
+0

這正是我所尋找的,非常感謝威廉! – Shark