就是显示列无效,没有包含在聚合函数里面,然后我一直搞了半天也没有弄出来,就很苦恼。上网查了,也没找到解决的方法
这个是MySQL的一个版本的bug,其他版本都没有的。大概意思就是,非聚合字段,MySQL不知道该把哪个值返回给你,可以通过设置解决,或者改变写法或者更换版本
在sql标准中,select后面的非聚合函数字段,必须都放到group by后面去。只有老版本的mysql没这个要求,因而会出现查询出来的数据出现随机性。其他数据库以及mysql8.0开始都是严格执行sql标准。
像你上面这个sql,应该加上 group by 订单.订购日期,订单.发货日期