Laravel - 分组错误的查询适用于phpmyadmin与结果

时间:2017-07-25 12:10:27

标签: php mysql laravel phpmyadmin

查询是:

$last_topics = Topics::orderby('date', 'DESC')->groupBy('section')->get();

错误:

enter image description here

所以在出错时我们可以看到查询是:select * from主题group by部分order by日期desc

但正如你所看到的,phpMyAdmin中的相同查询效果很好,而且我有结果 enter image description here

那有什么不对?

我还可以说,如果没有groupBy,在Laravel内部的查询中不会发出警告错误,例如:$last_topics = Topics::orderby('date', 'DESC')->get();

但正如我在phpmyadmin中所说的那样,与groupby相同的查询效果很好

2 个答案:

答案 0 :(得分:3)

确定这是数据库配置/config/database.php中使用数据库的模式。 Laravel没有将所有列添加到分组中。

'connections' => [
        'mysql' => [
            // Will work for you
            'strict' => false,

            // wont work for you
            'strict' => true,
        ]
    ]

答案 1 :(得分:1)

您可以在groupBy之后致电get

Topics::orderby('date', 'DESC')->get()->groupBy('section');