Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Laravel中获取groupBy的数据和计数?_Laravel_Eloquent_Group By - Fatal编程技术网

如何在Laravel中获取groupBy的数据和计数?

如何在Laravel中获取groupBy的数据和计数?,laravel,eloquent,group-by,Laravel,Eloquent,Group By,如何获取groupBy的计数以及数据 我试过这个,但它只返回计数,没有数据 $data = Model::orderBy('id', 'desc') ->select('status', DB::raw('count(*) as total')) ->groupBy('status') ->get(); 任何帮助都将不胜感激 谢谢 我还没有测试过。会是这样的。这将返回一个带有id、

如何获取
groupBy
的计数以及数据

我试过这个,但它只返回计数,没有数据

$data = Model::orderBy('id', 'desc')
                ->select('status', DB::raw('count(*) as total'))
                ->groupBy('status')
                ->get();
任何帮助都将不胜感激

谢谢

我还没有测试过。会是这样的。这将返回一个带有id、状态和计数的数组。如果它不起作用,请告诉我

但是,如果您通过这种方式包括
id
,这是唯一的,并且在groupby中没有意义,那么您的mysql应该能够这样做,否则它将抛出
sql\u mode=only\u full\u group\u by
error laravel。它可以通过改变模式来处理。但我建议按id删除订单

'connections' => [
    'mysql' => [
        // Behave like MySQL 5.6
        'strict' => false,

        // Behave like MySQL 5.7
        'strict' => true,
    ]
]

出现语法错误或访问冲突:1055。。。不在群中,我只是更新了答案。刚刚意识到id已在查询中使用。该名称已设置为
true
。我现在可以获取
id
,但如何获取所有数据?就像
select*fromtablename
no。问题是你说mysql不要那么严格,这是为了让你使用这个不太酷的组id字段来包含在分组查询中
'connections' => [
    'mysql' => [
        // Behave like MySQL 5.6
        'strict' => false,

        // Behave like MySQL 5.7
        'strict' => true,
    ]
]