好好的一个 mysql 统计查询,在开发环境和临时测试环境上都是正常的,但到了正式测试环境却出现了 如下错误:
In aggregated query without GROUP BY, expression #1 of SELECT list contains nonaggregated column 'lqzh.jlpb_administration_shift_report.unit_name'; this is incompatible with sql_mode=only_full_group_by
刚看到这个错误感觉有点懵逼,一翻百度查询有个大概了解,原来是数据库的配置文件的问题,
借鉴于: http://www.cnblogs.com/tygtyg/p/9895481.html
打开开发环境的数据库的
正式的测试环境中数据库的配置文件却没有发现这项配置约束
下面简单复现下 问题产生和解决办法:
红线标注的地方就是产生问题的原因
解决办法:在返回值不确定的地方 加上 ANY_VALUE(CLOUM_NAME)
还有另外一种解决办法需要修改数据库的配置文件,以我愚见感觉代价太大没有采用,若采用上面的办法没有解决可以参考
下面文章: