我不确定cakephp这样做的方法。我的模型如下(简化)
Model
id column1 column2 column3 sum
1232 3 5 2
5474 5 10 4
现在,由于程序的性质,我需要遍历数据库,将每个列值乘以一个乘数,然后对这些值求和,然后将该值放入每个记录的总和中。所以,例如,如果我有一个变量$ multiplier = 2,那么我希望第一行发生这种情况:
(3*$multiplier) + (5*$multiplier) + (2*$multiplier) = 20
Model
id column1 column2 column3 sum
1232 3 5 2 20
5474 5 10 4 38
当然,这是非常简化的,但它代表了我想要做的事情。
是否有蛋糕方法可以做到这一点?我在数据库中没有自动递增的id列,而只是一个id列(这是唯一的)。
谢谢!
答案 0 :(得分:1)
让数据库为您完成:
$this->Model->updateAll(array('sum' => 'column1 + column2 + column3'));
http://book.cakephp.org/view/1031/Saving-Your-Data(请参阅updateAll
部分)。