mysql 必须group by全部select中的字段?-灵析社区

走你啊啊啊啊啊

** 我发现mysql的group by 后面的字段没有严格要求,甚至select后面的字段可以不出现在group by后面**

阅读量:331

点赞量:11

问AI
这取决于 "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" (https://link.segmentfault.com/?enc=%2F4hAaih%2BHsB3pZnDg2y7wA%3D%3D.JtEl%2BKagqhuVAIYt145ioTs%2BpdZgfYecuHinN6jD4MPpLvz2uCBkjFIDRKpRRjS9KyTAKaMSdeZmENUfkddZpuYh4WYDwdUWvbNHFlNl8%2Bg%3D)