最近运维升级mysql,是从Mysql5.6升级到5.7,目前遇到的一个问题。

问题描述:select from (select from tablename order by create_time desc) group by user

此sql的目的是想取用每个user分组的最新的一条数据 。此sql事在5.6这么取值得到。

5.7环境,子查询里的order by 是不起作用的。所有线上大批量的和预计的达到的需要不符合,最后临时应对政策就是这样写。

select from (select from tablename order by create_time desc limit 100000) group by user

这样的方式可以达到预期的结果。看到这篇文章的小伙伴可以自己亲自试试。