select * from(
select
a.id,
a.fid
a.create_time
from
a
order by a.create_time desc
) b
group by b.fid
所示语句,group by未取的order by desc后的第一条数据
在order by desc 后加入limit 100000限定后可获取到,为什么,求哪位大神解释一下其中的原理
select * from(
select
a.id,
a.fid
a.create_time
from
a
order by a.create_time desc
) b
group by b.fid
所示语句,group by未取的order by desc后的第一条数据
在order by desc 后加入limit 100000限定后可获取到,为什么,求哪位大神解释一下其中的原理
mysql5.7对子查询order by做了优化,你这么写会被忽略掉,5.6还是可以的,5.7要改写:子查询加一个limit子句或者使用聚合函数获取数据再关联原表的写法