Laravel 来自具有多个表联接的第二个表的行计数

Laravel 来自具有多个表联接的第二个表的行计数,laravel,laravel-query-builder,Laravel,Laravel Query Builder,我有三张桌子: TABLE1: jobposts (id,user_id,qualification_id) TABLE2: appliedjobs (id,jobposts_id,message) TABLE3: qulificationmasters (id, qualificationame) jobposts_id from TABLE is foreign key of id of jobposts 我需要所有来自JobPost的记录以及appliedjobs的行数 我试着

我有三张桌子:

TABLE1:

jobposts (id,user_id,qualification_id)

TABLE2:

appliedjobs (id,jobposts_id,message)

TABLE3:

qulificationmasters (id, qualificationame)
jobposts_id from TABLE is foreign key of id of jobposts
我需要所有来自JobPost的记录以及appliedjobs的行数

我试着这样做:

$jobposteddetails = DB::table('jobposts')
    ->rightJoin('qulificationmasters','qulificationmasters.id', '=', 'jobposts.qualification_id')   
    ->leftJoin('appliedjobs','appliedjobs.jobposts_id', '=', 'jobposts.id')
   ->select('jobposts.*','qulificationmasters.QualificationName', DB::raw('count(appliedjobs.id) as counts'))
            ->where('jobposts.user_id', '=', $user->id)
            ->groupBy('appliedjobs.id')
            ->get();
但给出的错误如下:它希望groupby中的每一列都包含jobsposts和qulficationmasters以及qulficationmasters.id

但给出的错误如下:它希望groupby中的每一列都包含jobsposts和qulficationmasters以及qulficationmasters.id

如果我把所有的职位和资格证书列在一起分组,那么效果很好。
但是为什么所有列都是gropuby。

进入config folder database.php查找mysql数组并将strict设置为false,然后再次检查。

但是为什么设置为strict false?strict模式控制mysql如何处理数据更改语句(如INSERT或UPDATE)中的无效或缺失值。值可能因多种原因而无效。例如,该列的数据类型可能错误,或者可能超出范围。如果要插入的新行不包含定义中没有显式默认子句的非NULL列的值,则缺少值。(对于NULL列,如果缺少值,则插入NULL。)严格模式还影响DDL语句,如CREATE TABLE。