Php 使用函数查询时,Laravel查询失败
我正在尝试按月获取所有用户组的金额总和。但如果我添加总和,则查询不起作用。它将金额日志作为空白数组返回,但没有总和查询,将所有日志数据作为每月返回 我的问题Php 使用函数查询时,Laravel查询失败,php,mysql,laravel,laravel-5,eloquent,Php,Mysql,Laravel,Laravel 5,Eloquent,我正在尝试按月获取所有用户组的金额总和。但如果我添加总和,则查询不起作用。它将金额日志作为空白数组返回,但没有总和查询,将所有日志数据作为每月返回 我的问题 $reports = $user->whereHas('groups', function ($query) use($acceptedGroup) { $query->whereIn('groups.name',$acceptedGroup); })->with( array( 'amou
$reports = $user->whereHas('groups', function ($query) use($acceptedGroup) {
$query->whereIn('groups.name',$acceptedGroup);
})->with(
array(
'amountLogs' => function($query) use($year){
$query
->select(
DB::raw('sum(amount) as total')
)
->whereYear('created_at','=', $year)
->groupBy(DB::raw("MONTH(created_at)",'user_id'))->get();
})
);
如果我删除
->select(
DB::raw('sum(amount) as total')
)
然后查询工作如果在查询中对关系创建特定的select,还需要将外键包含到相关表中(在您的情况下,可能是users表)
这允许Eloquent在从数据库加载后关联记录。如果在查询中对关系创建特定的select,还需要将外键包含到相关表中(在您的情况下,可能是users表)
这允许Elount在从数据库加载后关联记录。您使用的是哪一版本的laravel?尝试
selectRaw
而不是select
您使用的是什么版本的laravel?尝试selectRaw
而不是select
->select(
'user_id',
DB::raw('sum(amount) as total')
)