2

我需要有关如何使用SUM()Laravel 的 MySQL 函数从数据库查询中返回结果的帮助。我知道我需要使用原始数据库查询,我已经尝试过了,但它似乎只返回一个数组。

这是我到目前为止的代码:

$cron_jobs = DB::select('
      SELECT ROUND(SUM((TIME_TO_SEC(TIMEDIFF(end_time, start_time))/60)/15))
      AS cron_jobs
      FROM `quiet_periods`');

var_dump($cron_jobs);
exit;

这是我的控制台日志:

array(1) {
  [0]=>
  object(stdClass)#689 (1) {
    [cron_jobs]=>
    string(2) "20"
  }
}

我的目标是从返回的结果中提取价值20,但我似乎无法实现这一目标。当我运行以下代码时:

echo $cron_jobs;

它应该只显示键/值对的值。

请注意:我还使用DB::statement了返回 1 的结果,我假设它是一个布尔结果。我不明白为什么......哦,我已经使用DB::raw了,DB::select但似乎只返回相同的结果。

4

2 回答 2

5

使用标准访问器访问您的数据

$crons = $cron_jobs[0]->cron_jobs;
于 2013-07-30T11:52:12.643 回答
1

我不知道我们在说什么 Laravel 版本,但是在 4 中你得到了:

DB::selectOne($sql);
于 2014-05-05T05:28:29.447 回答