TIPS:MySQL按给定时间间隔分组统计

embedded/2024/9/23 9:26:58/

MySQL按给定时间间隔分组统计


需求一,查询每天8点到23点的数据

  在MySQL中,若要查询在一个指定时间段内(比如每天的8点到23点)的所有数据记录, 可以使用BETWEEN关键字结合日期函数来实现。 假设数据表名为your_table_name,时间字段名为time_column。以下是一个示例SQL查询语句,获取每天8点到23点之间的所有数据记录:

SELECT * 
FROM your_table_name 
WHERE HOUR(time_column) BETWEEN 8 AND 23;

  上述查询直接基于时间字段的小时部分进行筛选,但是需要注意的是,time_column是一个可以直接用HOUR()函数提取小时数的日期时间类型字段(如DATETIME或TIMESTAMP类型)。

需求二,查询指定时间段内,每天8点到23点的数据

  如果想要查询指定时间段内的每天8点到23点的所有数据,那么在上述SQL再加上时间查询语句即可:

SELECT * 
FROM your_table_name 
WHERE time_column BETWEEN '2024-04-02 00:00:00' AND  '2024-04-06 23:59:59'
AND HOUR(time_column) BETWEEN 8 AND 23;

需求三,按照时间间隔分组统计

  如果想要查询指定时间段内的每天8点到23点的所有数据,并在按照指定秒钟数时间间隔统计,假如每隔5秒钟进行统计:

SELECT CONCAT(DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:'), LPAD(floor(second(create_time)/ 5)*5, 2, '0')) timePoint,COUNT(*) totalCount
FROM your_table_name 
WHERE time_column BETWEEN '2024-04-02 00:00:00' AND  '2024-04-06 23:59:59'
AND HOUR(time_column) BETWEEN 8 AND 23
GROUP BYtimePoint;

  CONCAT(DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:'), LPAD(floor(second(create_time)/ 5)*5, 2, '0'))语句中的5就表示每间隔5秒钟进行分组统计,如果想要其它间隔时间直接修改即可。

需求四,分组统计某个时间点的数据

  上述SQL已经按照每间隔5秒钟进行了分组统计,那么如果现在又只想统计每个时间间隔的数据,又该怎样编写SQL呢:

SELECT CONCAT(DATE_FORMAT(create_time, '%Y-%m-%d %H:%i:'), LPAD(floor(second(create_time)/ 5)*5, 2, '0')) timePoint,COUNT(*) totalCount
FROM your_table_name 
WHERE time_column BETWEEN '2024-04-02 00:00:00' AND  '2024-04-06 23:59:59'
AND HOUR(time_column) BETWEEN 8 AND 23
AND second(time_column) % 5 = 0
GROUP BYtimePoint;

  上述SQL通过对具体时间的分钟数进行按照5求余,从而得到当前那一时刻点数据量,即只会统计秒钟能被5除尽的数据值,执行结果如下:

timePointtotalCount
2024-04-02 21:49:451
2024-04-02 21:49:502
2024-04-02 21:49:554

一键三连,让我的信心像气球一样膨胀!


http://www.ppmy.cn/embedded/38034.html

相关文章

在哪个网站找视频素材?在哪可以下视频素材?

在这个视频内容极为重要的时代,高质量的视频素材成为了创作的关键。特别是4K和无水印视频素材,它们不仅提升了视觉效果,也为作品增加了专业度。以下是一些优秀的国内外视频素材网站,希望能助您一臂之力。 1. 蛙学府 专注于为中国…

说一下 hibernate 的缓存机制?

Hibernate 的缓存机制是为了提高应用程序的性能,通过减少对数据库物理数据源的访问频次而设计的。Hibernate 的缓存主要可以分为两个级别:一级缓存(也称为 Session 级别的缓存)和二级缓存(也称为 SessionFactory 级别的…

【数学建模】天然肠衣搭配问题

2011高教社杯全国大学生数学建模竞赛D题 天然肠衣(以下简称肠衣)制作加工是我国的一个传统产业,出口量占世界首位。肠衣经过清洗整理后被分割成长度不等的小段(原料),进入组装工序。传统的生产方式依靠人工…

低代码与云原生的技术解析:赋能企业数字化转型

随着数字化转型的深入推进,低代码和云原生技术逐渐成为企业关注的热点。本文将对这两种技术进行详细解析,探讨它们在企业数字化转型中的应用场景和优势,以期为企业提供更高效的解决方案。 引言 在当今时代,技术创新已成为企业核心…

《深入Linux内核架构》第4章 进程虚拟内存(1)

目录 4.1 简介 4.2 进程虚拟地址空间 4.2.1 进程地址空间分布 4.2.2 建立布局 本专栏文章将有70篇左右,欢迎关注,订阅后续文章。 第3章讲了两点:物理内存的管理,内核虚拟地址管理。 本章讲:用户进程的虚拟地址空间…

cesium 雷达遮罩(电弧球效果)

cesium 雷达遮罩(电弧球效果) 以下为源码直接复制可用 1、实现思路 通过修改“material”材质来实现轨迹球效果 2、代码示例 2.1 index.html <!DOCTYPE html> <html lang="en"><head><!

Typescript高级: 深入理解const和readonly

概述 在编程语言中&#xff0c;const 和 readonly 是两种用于声明常量或只读属性的关键字它们帮助开发者确保数据的不可变性&#xff0c;从而提高代码的安全性和可维护性虽然这两个概念在不同的编程语言中可能有所差异但本文将以 TypeScript 为例&#xff0c;深入探讨 const 和…

伪装目标检测论文阅读之Dual-SAM(CVPR-2024)

论文&#xff1a;link code&#xff1a;code Fantastic Animals and Where to Find Them:Segment Any Marine Animal with Dual SAM 摘要 作为水下智能的重要支柱&#xff0c;海洋动物分割(MAS)涉及对海洋环境中的动物进行分割。以往的方法在提取长范围上下文特征方面表现不佳…