mysql5.7.5以上版本使用distinct和order by 报错备忘录

这个问题发生也是测试环境和生产环境不一致导致的,测试环境的mysql是用的是5.6版本,生产使用的是5.7.5以上版本,我在查询的时候使用了distinct关键字,搭配了order by去使用,但是我排序的字段不是我distinct的字段,导致了报错,后面查阅资料才知道mysql5.7.5以上版本有ONLY_FULL_GROUP_BY SQL默认启用,当distinct搭配orderby字段的时候,因为orderby的字段不是distinct的字段,就会导致报错:

Expression #1 of ORDER BY clause is not in SELECT list, references column '数据库.表名.字段' which is not in SELECT list; this is incompatible with DISTINCT

原文地址:https://www.cnblogs.com/preferlin/p/15353656.html