报错信息:
The error may involve defaultParameterMap
The error occurred while setting parameters
SQL: select distinct master_order_id as masterOrderId,order_status as orderStatus,rider_id as riderId from st_order where gk_id = ? AND pay_status = 1 and payment_time is not null ORDER BY payment_time DESC LIMIT ?
Cause: java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, references column ‘meigo.st_order.payment_time’ which is not in SELECT list; this is incompatible with DISTINCT
; uncategorized SQLException; SQL state [HY000]; error code [3065]; Expression #1 of ORDER BY clause is not in SELECT list, references column ‘meigo.st_order.payment_time’ which is not in SELECT list; this is incompatible with DISTINCT; nested exception is java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, references column ‘meigo.st_order.payment_time’ which is not in SELECT list; this is incompatible with DISTINCT] with root cause
java.sql.SQLException: Expression #1 of ORDER BY clause is not in SELECT list, references column ‘meigo.st_order.payment_time’ which is not in SELECT list; this is incompatible with DISTINCT
出现问题的原因:mysql5.6 换成mysql5.7 后,mysql5.7不支持 DISTINCT 与 order by 同时使用,项目中使用这种写法多的话,建议还是把5.7换成5.6.没有任何办法用配置解决版本的差异问题。