laravel模型使用groupby函数报错 | laravel china 社区-380玩彩网官网入口

laravel版本:7.0
mysql版本:5.7.26
php 7.2

sqlstate[42000]: syntax error or access violation: 1055 expression #1 of select list is not in group by clause and contains nonaggregated column 'tp_6.article.id' which is not functionally dependent on columns in group by clause; this is incompatible with sql_mode=only_full_group_by (sql: select * from article group by user_id)
  • 产生原因:

    由于mysql默认开启严格模式,当select字段比group by使用到的字段多的时候,会报错。

  • 380玩彩网官网入口的解决方案:

    在laravel的config/database.php中设置 strictfalse,关闭严格模式,如下图:

    laravel模型使用groupby函数报错

ps : 关闭严格模式会有一些其他的影响,比如varchar字符长度超过了指定的长度,会截取到指定长度,而不会报错等

参考博客:

本作品采用《cc 协议》,转载必须注明作者和本文链接
emin
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
以构建论坛项目 larabbs 为线索,展开对 laravel 框架的全面学习。应用程序架构思路贴近 laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
网站地图