[Err] 1055 - Expression #17 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘eshop.sop.id’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
错误原因:在mysql5.7.5版本之后,实现对功能依赖·的检测。在默认情况下,会自动启动NOT_FULL_GROUP_BY模式,而该模式MySQL就会拒绝选择列表、条件或顺序列表引用的查询,这些查询将引用组中未命名的非聚合列,而不是在功能上依赖于它们。
一:第一种方法(一次性)
cmd ->进入到数据库(mysql -uroot -p133)(root为账号,123为密码)
->查找数据:select @@sql_mode
->修改:set @@sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION'
二:第二种方法(永久)
1.找到mysql文件夹,修改my.ini文件
2.在[mysqld]下面添加下面语句:
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
3.保存,然后重新启动mysql服务器。