thinkphp5 相同数据取最新一条的时间 如何分页?-灵析社区

PunkMaccccc

这个表里比如有多个userid,每次登录系统都会记录一个登录时间,现在在报表中要显示,每个userid对应最新的登录时间,这个还要分页。有什么办法可以现实吗? Db::name("log")->order("created","asc")->group("userid")->paginate(10) 我现在这样写的话,是没法取到最新时间的,而且分页的排序也会乱掉

阅读量:188

点赞量:0

问AI
除了ai那个回答,你也可以先排序,再分组 比如 select user_id from( select user_id from log order by ID desc limit 9999999 ) group by user_id 就是数量大的话会有性能问题 还可以 select user_id, (select max(time) from log as l2 where l2.user_id = l1.user_id) as newLoginTime from log as l1 group by user_id