如题,我在网上也找过相关解决方法,很多解答都是这么一句%ign%ignore_a_1%re_a_1%:
select id,accountid,mark,max(createtime) as latest from accountmark as b group by accountid
使用max函数。但是在我查出来的数据中似乎有些不对,如图,反白的那一条数据,mark字段和createtime字段根本不对应啊!


这是怎么回事?使用max函数后在分组这样靠谱吗?
还有一条语句:select *,count(accountid) as num from
(select * from accountmark order by createtime desc) `temp`
group by accountid order by createtime desc
这样查出来的数据是对的
但是,我需要创建视图,mysql中视图里不允许出现查询子句。求大神些一条sql语句,能实现既不出现子句,又能查出正确数据。谢谢!
解决方法:
select * from AccountMark as b where not exists(select 1 from AccountMark where AccountId= b.AccountId
and b.CreateTime<CreateTime )
Ai Mailer
使用Ai Mailer轻松制作电子邮件
49 查看详情
以上就是MySQL 分组后取时间最新记录的详细内容,更多请关注创想鸟其它相关文章!
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1081266.html
微信扫一扫
支付宝扫一扫