我尝试根据文档计算CakePHP中的数值。无论我尝试什么,我只收到该列的行数而不是数值的总和。
我的文章模型中的查询:
我尝试计算数据库中所有文章的hitcount数量。 hitcount是一个INT字段:
$total_articles = $this->find('count', array('fields' => 'Article.hitcount'));
//返回3,即数据库中的总行数
我尝试计算来自特定用户的hitcounts数量
$hitcountUser = $this->find('count', array('fields' => 'Article.hitcount', 'conditions' => array('Article.user_id' => $user)));
//返回3,数据库中的总行数,所有文章都由该用户发布。
如何总结Article.hitcount中的数值?我用Google搜索但找不到答案。
答案 0 :(得分:0)
Count不会对要检索的字段中的值求和。它执行MySQL计数,计算结果中返回的行数。
为了对字段求和,您必须返回MySQL SUM值或循环遍历PHP中的结果并将它们相加。
我会这样做:
$article = $this->Model->find(
'first',
array(
'fields'=>array('SUM('Article.hitcount') AS Article.hitcountsum'),
)
);
哪个应该给你一个像:
这样的数组$article['Article']['hitcountsum'];