tp only_full_group_by理解
时间: 2023-11-03 16:01:47 浏览: 107
tp only_full_group_by是指在使用TP框架进行数据库操作时,出现了"Expression #6 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘supply_heat.record.supply_quality’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by"错误。这个错误是由于MySQL的sql_mode配置中开启了ONLY_FULL_GROUP_BY模式,导致SELECT语句中的列没有在GROUP BY子句中出现而产生的。
只有当SELECT语句中的列都出现在GROUP BY子句中,才符合ONLY_FULL_GROUP_BY模式的要求。如果出现了上述错误,可以通过修改MySQL的配置文件来解决。对于centos系统,可以直接去掉my.cnf配置文件中的sql-mode中的ONLY_FULL_GROUP_BY参数;对于ubuntu系统,可以在配置文件的最后加上sql-mode=sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION;对于windows系统,可以修改my.ini文件中的配置。这样就可以解决tp only_full_group_by的问题。
阅读全文