开发者社区> 问答> 正文

SQL语句如何统计每小时的最后一条,每天的最后一条

mysql数据库每分钟记录一条数据

大概结构

id -- 编号

value -- 数据

atime -- 添加时间(Unix时间戳)

如何按照每小时,每天,统计最后一条数据,形成报表。

每小时 -- 取自然小时的最后一条,比如 15:59的这一条

每天 -- 23:59 这一条

求这个sql语句,谢谢,

展开
收起
小旋风柴进 2016-03-11 13:57:22 4778 0
1 条回答
写回答
取消 提交回答
  • 思路是:①先用case when语句,给每条记录打上一个时间分组标识。如果统计的是每小时最后一条,就按小时分组;如果统计每天最后一条,就按日期分组;得到一个表a。 ②在表a的基础上,用group by 语句按时间分组标识分组后,order by atime desc,然后取每个分组的第一条数据。

    2019-07-17 18:59:07
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
SQL Server 2017 立即下载
GeoMesa on Spark SQL 立即下载
原生SQL on Hadoop引擎- Apache HAWQ 2.x最新技术解密malili 立即下载