Я пытаюсь добавить данные того же поля и хочу вернуть результат, я использовал следующий запрос:
$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;
И я получаю следующий результат:
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
)
)
Где я могу найти свой sum
?
debug()
вместоprint_r()
, это даст вам более подходящий результат. Попробуйте выполнитьsum(Details.total_downtime+ Details.total_downtime) as my_sum
, а затем получить доступ к$total->toArray()[0]['my_sum']
. - person Holt   schedule 21.12.2015func()->sum()
и т. д., скорее всего, см. документацию. - person mark   schedule 21.12.2015