MySQL如何使用groupby报thisisincompatiblewithsql_mod
MySQL如何使用group by 报this is incompatible with sql_mod,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
创新互联公司专注于企业成都全网营销、网站重做改版、凌源网站定制设计、自适应品牌网站建设、H5页面制作、成都做商城网站、集团公司官网建设、外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为凌源等各大城市提供网站开发制作服务。
下面是employee表的所有数据。
使用group by 分组查询报错this is incompatible with sql_mode=only_full_group_by
查看sql_model参数发现:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
ONLY_FULL_GROUP_BY选项开启,那么在使用group by时候, 只能select查询group by后面的选项,或者使用聚合函数。
只查询group by后面的列:
使用聚合函数:
但以上两种方法不推荐!!!
推荐解决方法:
1.临时,重启mysql会失效
set @@GLOBAL.sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
2.修改/etc/my.cnf
[mysqld]
加一行
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
重启MySQL即可生效。
看完上述内容,你们掌握MySQL如何使用group by 报this is incompatible with sql_mod的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读!
文章名称:MySQL如何使用groupby报thisisincompatiblewithsql_mod
文章网址:http://azwzsj.com/article/gcjopo.html