问题:
今天在联表查询的时候发现orderBy和groupBy居然sql报错了,语句拿出来执行是完全木有问题的

1、于是乎stackoverflow一番发现网上小伙伴说是mysql设置了严格模式,要改为宽松模式需要把my.cnf配置里面的ONLY_FULL_GROUP_BY去掉,之后查了ONLY_FULL_GROUP_BY,其实就是要将select的字段都包含在groupBy里面(Ps:select a,b from table group by a,b),随后确认自己服务器实际上并没有配置这个参数
2、随后觉得应该是laravel的bug,翻阅了配置文件发现有一个 strict 的配置项,突然明白是因为laravel本身也有这方面的配置,果不其然,改成了false,立马解决问题
至于strict(下面复制别人的,懒得手写)
- 不支持对not null字段插入null值
- 不支持对自增长字段插入”值
- 不支持text字段有默认值
帖子纯属记录
本文记录了解决在使用Laravel框架进行联表查询时遇到的MySQL ONLY_FULL_GROUP_BY错误的过程。通过调整Laravel的strict配置项为false,成功解决了在联表查询中使用orderBy和groupBy时出现的SQL报错问题。

被折叠的 条评论
为什么被折叠?



