cakephp 3 中的 SUM 查询不起作用

Ris*_*shu 3 cakephp cakephp-3.0

我正在尝试添加相同字段的数据并希望返回我使用以下查询的结果:

$total = $this->Details->find('all', array(
    'fields' => array('sum(Details.total_downtime+ Details.total_downtime)'), 
    'conditions' => array('Details.site_id' => $id)
));    
print_r($total->toArray());
exit;
Run Code Online (Sandbox Code Playgroud)

我得到以下结果:

Array ( 
    [0] => App\Model\Entity\Detail Object ( 
        [displayField] => username 
        [_accessible:protected] => Array ( 
            [*] => 1 
            [id] => 1 
            [site_id] => 1 
            [uptime] => 1 
            [downtime] => 1 
        ) 
        [_properties:protected] => Array ( 
             [sum(Details] => Array ( [total_downtime+ Details] => 4 ) 
        ) 
        [_original:protected] => Array ( ) 
        [_hidden:protected] => Array ( ) 
        [_virtual:protected] => Array ( ) 
        [_className:protected] => App\Model\Entity\Detail [_dirty:protected] => Array ( ) 
        [_new:protected] => 
        [_errors:protected] => Array ( ) 
        [_registryAlias:protected] => Details 
    ) 
)
Run Code Online (Sandbox Code Playgroud)

我在哪里可以找到我的sum

mak*_*o85 6

我猜你正在努力实现这样的目标?

$query = $Details->find(); 
$query
    ->select(['sum' => $query->func()->sum('Details.total_downtime')])
    ->where(['Details.site_id' => $id])
    ->toArray();
Run Code Online (Sandbox Code Playgroud)