MySQL 获取前24小时每小时数据总数

这篇具有很好参考价值的文章主要介绍了MySQL 获取前24小时每小时数据总数。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、准备数据

1、创建表结构

SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;

-- ----------------------------
-- Table structure for data_report
-- ----------------------------
DROP TABLE IF EXISTS `data_report`;
CREATE TABLE `data_report`  (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
  `app_id` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL COMMENT '租户ID',
  `record_num` int(11) NULL DEFAULT NULL COMMENT '记录条数',
  `create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `appId`(`app_id`, `create_time`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 2646 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci COMMENT = '数据报表' ROW_FORMAT = Dynamic;

SET FOREIGN_KEY_CHECKS = 1;

2、表中填充数据

INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (1, 'P15942995247454', 1, '2023-05-04 11:11:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (24, 'P15942995247454', 1, '2023-05-04 12:12:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (47, 'P15942995247454', 1, '2023-05-04 13:13:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (70, 'P15942995247454', 1, '2023-05-04 14:14:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (93, 'P15942995247454', 1, '2023-05-04 15:15:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (116, 'P15942995247454', 10, '2023-05-04 16:16:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (139, 'P15942995247454', 1, '2023-05-04 17:17:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (162, 'P15942995247454', 1, '2023-05-04 18:18:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (185, 'P15942995247454', 1, '2023-05-04 19:19:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (208, 'P15942995247454', 1, '2023-05-04 20:20:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (231, 'P15942995247454', 1, '2023-05-04 21:21:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (254, 'P15942995247454', 1, '2023-05-04 22:22:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (277, 'P15942995247454', 1, '2023-05-04 23:23:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (300, 'P15942995247454', 1, '2023-05-05 00:24:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (323, 'P15942995247454', 1, '2023-05-05 01:25:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (346, 'P15942995247454', 1, '2023-05-05 02:26:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (369, 'P15942995247454', 1, '2023-05-05 03:27:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (392, 'P15942995247454', 1, '2023-05-05 04:28:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (415, 'P15942995247454', 1, '2023-05-05 05:29:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (438, 'P15942995247454', 1, '2023-05-05 06:30:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (461, 'P15942995247454', 1, '2023-05-05 07:31:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (484, 'P15942995247454', 1, '2023-05-05 08:32:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (507, 'P15942995247454', 1, '2023-05-05 09:33:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (530, 'P15942995247454', 1, '2023-05-05 10:34:00');
INSERT INTO `ice`.`data_report` (`id`, `app_id`, `record_num`, `create_time`) VALUES (553, 'P15942995247454', 1, '2023-05-05 11:35:00');

二、获取前24小时每小时数据

你可以使用以下 SQL 查询语句来获取 MySQL 数据库中当前前24小时每小时的数据:

SELECT
	DATE_FORMAT( create_time, '%Y-%m-%d %H:00:00' ) AS HOUR,
	COUNT(*) AS count 
FROM
	data_report
WHERE
	create_time>= DATE_SUB( NOW(), INTERVAL 24 HOUR ) 
GROUP BY
	HOUR;

这个查询语句会将 data_report 表中过去24小时内每个小时的数据进行统计,并按照小时分组。其中,create_time 是你表中记录创建时间的字段名,你需要将其替换成实际的字段名。DATE_FORMAT 函数用于格式化时间,将分钟和秒钟部分都设置为0,只保留小时部分。COUNT 函数用于统计每个小时内的数据量。

执行这个查询语句后,你会得到一个结果集,其中包含了过去24小时内每个小时的数据量。

三、获取24小时内的每分钟数据总数

要获取 MySQL 数据库中当前前24小时每分钟的数据,可以使用以下 SQL 查询语句:

SELECT
	DATE_FORMAT( create_time, '%Y-%m-%d %H:%i:00' ) AS MINUTE,
	COUNT(*) AS count 
FROM
	data_report 
WHERE
	create_time>= DATE_SUB( NOW(), INTERVAL 24 HOUR ) 
GROUP BY
	MINUTE;

这个查询语句与前面的查询语句类似,只是将时间格式化的方式改为了保留分钟部分,并且将分组的单位改为了分钟。执行这个查询语句后,你会得到一个结果集,其中包含了过去24小时内每分钟的数据量。文章来源地址https://www.toymoban.com/news/detail-434700.html

到了这里,关于MySQL 获取前24小时每小时数据总数的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • iview时间控件 动态不可选日期 可选择24小时范围内 时间往后退24小时

    起始时间 触发 on-change 方法 结束时间 options 动态设置不可选择的日期。 disabledDate(date) 内部的 date 是时间戳的形式 , return 返回的是不想要选的区间范围 注意: toLocaleDateString 获取的是年月日 toLocaleString 获取年月日时分秒 toLocaleTimeString 获取时分秒 new Date(new Date().toLocaleStri

    2024年02月11日
    浏览(33)
  • MySQL时间分组:按小时统计数据(mysql按小时分组)

    MySQL时间分组是一类涉及MySQL数据库的SQL语句,能够以小时对数据进行分组统计。 比如,如果你想根据一定的时间间隔,把MySQL数据库中的记录分成几组,那么MySQL时间分组技术就派上用场了。 MySQL时间分组主要使用MySQL语句YEAR(), WEEK(), HOUR()和GROUP BY来实现,按小时统计数据实

    2024年02月12日
    浏览(54)
  • 【C语言】时间转换24小时制转12小时制

            首先我们先了解一下24小时制转12小时制需要注意的几个点(时 命名为h)                 1.当h=12且h24的时候,就是下午                 2.当h==24的时候,就是上午(第二天上午)                 3.h12的时候,就是上午         那么根据这个思路,我们就可以写

    2024年02月08日
    浏览(49)
  • 24小时切换简易时钟-51单片机

    1、本设计主要介绍用单片机内部的定时/计数器来实现电子时钟的方法,本设计由单片机STC89C51单片机和LED数码管为核心,辅以必要的电路,构成了一个单片机电子时钟。 2、本设计拟实现的性能指标如下: (1)键盘用于校正、调节数码管上显示的时间。 (2)单片机通过输出

    2024年02月11日
    浏览(49)
  • 燃气管网监测系统,24小时守护燃气安全

    随着社会的发展和人民生活水平的提高,燃气逐渐成为人们日常生活和工作中不可或缺的一部分。然而,近年来,屡屡发生的燃气爆炸问题,也让人们不禁对燃气的安全性产生了担忧。因此,建立一个高效、实时、准确的燃气管网监测系统,对于预防燃气事故,保障公共安全

    2024年02月11日
    浏览(40)
  • 一个小时学会 MySQL 数据库

    随着移动互联网的结束与人工智能的到来大数据变成越来越重要,下一个成功者应该是拥有海量数据的,数据与数据库你应该知道。 数据库(Database)是存储与管理数据的软件系统,就像一个存入数据的物流仓库。 在商业领域,信息就意味着商机,取得信息的一个非常重要的

    2024年01月20日
    浏览(41)
  • APB接口的24小时钟表计数器

    //2022-3-19 soc设计 //APB接口的钟表计数器模块 //题目1:APB接口的模6计数器/模10计数器模块 // 设计内容: //APB2.0 接口 //支持异步复位(低电平有效) //支持软件同步复位(高电平有效) //支持计数暂停(高电平有效) //钟表计数器的显示按照每秒更新 //钟表计数器按照24小时循

    2023年04月08日
    浏览(30)
  • 应用于停车场的24小时计费算法

    停车场管理中,最普遍最简单的计费规则当属24小时计费,也就是在按停车小时数计费. 收费规则设置界面如下 24小时计费规则并不复杂,方法输入车辆进出时间startTime、endTime 参考代码Java

    2024年02月15日
    浏览(35)
  • Mysql按小时进行分组统计数据

    目录 前言 按1小时分组统计 按2小时分组统计 按X小时分组统计 统计数据时这种是最常见的需求场景,今天写需求时发现按2小时进行分组统计也特别简单,特此记录下。 sql: 返回值: 没啥好说的,直接使用 hour() 函数获取时间字段的小时部分进行分组统计即可 sql: 返回值:

    2024年02月13日
    浏览(46)
  • Ubuntu、CentOS 修改时区、设置24小时时间格式

     修改设置时区  方法一 tzselect 方法二 仅限于RedHat Linux 和 CentOS系统 timeconfig 方法三 适用于Debian dpkg-reconfigure tzdata 方法四 复制相应的时区文件,替换CentOS系统时区文件;或者创建链接文件 cp /usr/share/zoneinfo/EST5EDT /etc/localtime 或者 ln -s /usr/share/zoneinfo/EST5EDT /etc/localtime 时间同步

    2024年02月05日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包