这取决于 SQL_MODE 的设置,自 MySQL 5.7 开始,默认的 SQL_MODE 中启用了 ONLY_FULL_GROUP_BY,所以 select 后面的列必须出现在 group by 后面,但是你可以手动移除掉这个选项以禁用,禁用后就不再检查。MySQL :: MySQL 5.7 Reference Manual :: 1.3 What Is New in MySQL 5.7
这取决于
SQL_MODE
的设置,自 MySQL 5.7 开始,默认的SQL_MODE
中启用了ONLY_FULL_GROUP_BY
,所以 select 后面的列必须出现在 group by 后面,但是你可以手动移除掉这个选项以禁用,禁用后就不再检查。