lurenjia1993 2021-06-01 17:29 采纳率: 42.9%
浏览 56
已采纳

mysql5.7 order by desc group by应用问题

select * from(

select 

a.id,

a.fid

a.create_time

from 

order  by a.create_time desc

) b

group by b.fid 

所示语句,group by未取的order by desc后的第一条数据

在order by desc 后加入limit 100000限定后可获取到,为什么,求哪位大神解释一下其中的原理

 

  • 写回答

2条回答 默认 最新

  • 小P聊技术 2021-06-01 22:24
    关注

    mysql5.7对子查询order by做了优化,你这么写会被忽略掉,5.6还是可以的,5.7要改写:子查询加一个limit子句或者使用聚合函数获取数据再关联原表的写法

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?