用group by时select出现不应该的sal字段 问题
为什么老师的不能运行,我可以运行???sal在这里确实没有意义,但我的没有报错。
22
收起
正在回答 回答被采纳积分+1
1回答
好帮手慕小小
2021-10-17 15:54:10
同学你好,group by子句的执行受严格模式、数据库版本等多种环境因素影响,上述sql可以正确执行,猜测同学的代码是在非严格模式下执行的。可执行如下sql语句使其在严格模式下执行:
-- 严格模式
set global sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES';
set session sql_mode='ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES';
-- 非严格模式
set global sql_mode='NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';
set session sql_mode='NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES';
代码测试:
1、严格模式下执行
2、非严格模式下执行:
祝学习愉快~
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星