2017-05-06 69 views
0

我有以下口才查询Laravel总和 - >第一()总结多于1个结果

$raw = Model::select('out', 'in')->orderBy('created_at', 'DESC')->first(); 

返回单个项目的集合,其中,时间= 0.0和In = 90.0。

如果我再这样做:

$sumO = $raw->sum('out'); 
$sumI = $raw->sum('in'); 

我得到$sumO = 13,651.41$sumI = 13371.69

我不明白,因为这些资金并不甚至等于对那些colums在我的整个表的总和。

但似乎->sum()正在整个表/查询被调用,而不是像我认为会的first结果。

现在,我知道单行的总和很奇怪,而我实际上并没有在生产中这样做。我只想知道它在做什么。

不应该它只是总结1号码等于自己?

+2

'first()'返回一个模型,而不是一个集合。然后你在模型上调用'sum',并对数据库执行查询。 – joruro

回答

0

这只是使用 - > first()时的一行,所以不需要使用 - > sum()只需使用$ raw-> in和$ raw-> out。

此外, - > sum()一次与单个列一起使用。