360教程:是一个免费提供流行杀毒软件教程、在线学习分享的学习平台!

对于Mysql如何将数据分组后取出时间最近的数据详细说明

时间:2022-8-5作者:未知来源:360教程人气:

SQL是Structured Query Language(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。
如题,我在网上也找过相关解决方法,很多解答都是这么一句SQL语句:

select Id,Ac
count
Id,Mark,max(Create
Time
) as Latest from AccountMark as b group by AccountId

使用Max函数。但是在我查出来的数据中似乎有些不对,如图,反白的那一条数据,Mark字段和CreateTime字段根本不对应啊!
关于Mysql如何将数据分组后取出时间最近的数据详解关于Mysql如何将数据分组后取出时间最近的数据详解
这是怎么回事?使用Max函数后在分组这样靠谱吗?
还有一条语句:

select *,COUNT(AccountId) as Num from 
(select * from AccountMark order by CreateTime desc) `temp`  
group by AccountId order by CreateTime desc

这样查出来的数据是对的
关于Mysql如何将数据分组后取出时间最近的数据详解
但是,我需要创建视图Mysql中视图里不允许出现查询子句。求大神些一条SQL语句,能实现既不出现子句,又能查出正确数据。谢谢!

解决方法

select * from AccountMark as b where not exists(select 1 from AccountMark where AccountId= b.AccountId
and b.CreateTime<CreateTime )

以上就是关于Mysql如何将数据分组后取出时间最近的数据详解的详细内容,更多请关注php中文网其它相关文章!


学习教程快速掌握从入门到精通的SQL知识。



关键词:对于Mysql如何将数据分组后取出时间最近的数据详细说明




Copyright © 2012-2018 360教程(http://www.360sd.cn) .All Rights Reserved 网站地图 友情链接

免责声明:本站资源均来自互联网收集 如有侵犯到您利益的地方请及时联系管理删除,敬请见谅!

QQ:1006262270   邮箱:kfyvi376850063@126.com   手机版