使用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

image



问题原因:mysql5.7.5及以上版本将sql_mode的ONLY_FULL_GROUP_BY模式默认设置为打开状态,会导致一些错误


解决方案:


通过修改mysql的配置文件my.ini,关闭ONLY_FULL_GROUP_BY SQL模式


文件底部追加:

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION


本文地址:https://m.xunruicms.com/doc/994.html