MySQL检索距离当前最近的7个小时内,靠近每个时间点数据信息

MySQL检索距离当前最近的7个小时内,靠近每个时间点数据信息

如果你想在最近7个小时内找到每个时间点最接近的数据,即使某些时间点没有数据,你可以使用子查询和窗口函数。以下是一个示例查询:

sqlCopy codeSELECTt.time_point,COALESCE(y.your_column1, 0) AS your_column1,COALESCE(y.your_column2, 0) AS your_column2,...
FROM (SELECTCURDATE() + INTERVAL (HOUR(NOW()) - n) HOUR AS time_pointFROM(SELECT 0 AS nUNION SELECT 1UNION SELECT 2UNION SELECT 3UNION SELECT 4UNION SELECT 5UNION SELECT 6) AS hours
) t
LEFT JOIN (SELECTyour_column1,your_column2,...,your_datetime_column,ROW_NUMBER() OVER (PARTITION BY HOUR(your_datetime_column) ORDER BY ABS(TIMESTAMPDIFF(SECOND, your_datetime_column, NOW()))) AS row_numFROMyour_tableWHEREyour_datetime_column >= NOW() - INTERVAL 7 HOUR
) y ON t.time_point = DATE_FORMAT(y.your_datetime_column, '%Y-%m-%d %H:00:00') AND y.row_num = 1
ORDER BYt.time_point DESC;

在这个查询中,我们首先创建了一个包含过去7个小时内每个小时的时间点的临时表 t。然后,我们使用一个子查询从 your_table 中选择最近7个小时内每个小时内最接近当前时间的数据,并为每个小时的数据分配了一个 row_num

最后,我们使用 LEFT JOIN 将时间序列表和筛选后的数据连接,确保每个时间点都包含最接近的数据。ORDER BY 子句按照时间点降序排列。

请根据你的实际表和列名称进行适当的替换。这个查询假设每个小时内最多只有一条数据,如果有多条数据,可能需要根据具体需求进行调整。

实践

在这里插入图片描述

SELECTt.time_point ,y.id,y.NAME,y.creatime 
FROM(SELECTCURDATE() + INTERVAL ( HOUR ( NOW()) - n ) HOUR AS time_point FROM( SELECT 0 AS n UNION SELECT 1 UNION SELECT 2 UNION SELECT 3 UNION SELECT 4 UNION SELECT 5 UNION SELECT 6 ) AS hours ) tLEFT JOIN (SELECTid,NAME,creatime,ROW_NUMBER() OVER (PARTITION BY HOUR ( creatime ) ORDER BYABS(TIMESTAMPDIFF(SECOND,creatime,NOW()))) AS row_num FROMUSER WHEREcreatime >= NOW() - INTERVAL 7 HOUR ) y ON t.time_point = DATE_FORMAT( y.creatime, '%Y-%m-%d %H:00:00' ) AND y.row_num = 1 
ORDER BYt.time_point DESC;

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/597340.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

集群渲染是?渲染农场是?两者与云渲染关联是什么

在数字化浪潮不断推进的当下,渲染技术在多个行业中发挥着至关重要的作用,尤其体现在电影制作、建筑可视化以及电子游戏开发等领域。在众多渲染技术中,集群渲染、渲染农场以及云渲染特别受到业界的重视。本文旨在阐述这些概念的含义以及它们之…

基于SpringBoot的在线考试系统源码和论文

网络的广泛应用给生活带来了十分的便利。所以把在线考试管理与现在网络相结合,利用java技术建设在线考试系统,实现在线考试的信息化管理。则对于进一步提高在线考试管理发展,丰富在线考试管理经验能起到不少的促进作用。 在线考试系统能够通…

osg-材质 (osg::Material)

1.材质类 材质类 (osg::Material)继承自osg::StateAttribute 类。osg::Material 封装了 OpenGL的 glMaterial()和glColorMaterial()指令的函数功能,其继承关系图如图5-27 所示。 图 5-27 osg::Material 的继承关系图 在场景中设置节点的材质属性,首先要…

DBSCAN聚类算法

DBSCAN读作:DB Scan,是英语基于密度的噪声应用空间聚类(Density-Based Spatial Clustering of Applications with Noise)的简写。在理解K-means聚类算法之后再来理解DBSCAN就容易多了。 DBSCAN的步骤如下: 随机从一个…

年终特辑 | 2023卓翼飞思答卷,诚邀您共同翻阅...

朝夕轮转 , 岁序更替,站在岁末,回首2023 ,汇成的每一帧都有迹可循 ;卓翼飞思实验室产品升级、技术创新、服务卓越、勇毅前行以抢拼实干兑现硕果!无论您是亲历者,还是见证者,我们在此诚邀您共同翻…

高效工具汇总,让学习和办公飞起来

目录 1、寻找论文,效率很高2、学习各类编程的地方 1、寻找论文,效率很高 AMiner,由清华大学计算机科学与技术系的唐杰教授团队开发的一个显著的学术搜索和挖掘系统。系统提供了一整套功能以协助学术研究,包括研究人员档案、专家搜…

element-ui Tree 树形控件 过滤保留子级并获取过滤后的数据 多选改单选

本示例基于vue2 element-ui element-ui 的官网demo是只保留到过滤值一级的,并不会保留其子级 目标 1、Tree 树形控件 保留过滤值的子级 2、在第一次过滤数据的基础上进行第二次过滤 3、Tree 树形控件 多选改为单选,且只有最末端子级可以选择 不足…

Django 8 通用视图基础

1. 什么是通用视图 1. 在terminal 输入 django-admin startapp the_12回车 2. tutorial\settings.py 注册 INSTALLED_APPS [django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessions,django.contrib.messages,django.contrib.sta…

链接器--动态链接器--延迟绑定与动态链接器是什么?学习笔记二

内容在下面链接(通过新建标签页打开): 链接器--动态链接器--延迟绑定与动态链接器是什么?学习笔记二一个例子来看延迟加载https://mp.weixin.qq.com/s?__bizMzkyNzYzMjMzNA&mid2247483713&idx1&snee90a5a7d59872287…

C++知识切片①:运算符重载之前置递增和后置递增

文章目录 前置递增的实现1.先写好main函数及头文件2.自定义MyInteger类3.重定义cout4.在类内实现前置递增 后置递增的实现完整代码 在进行运算符重载之前,不妨先看看常规的前置递增和后置递增的区别: 前置递增如a所示,a是先进行递增计算&…

人工智能大模型:定义、发展和应用

⭐简单说两句⭐ ✨ 正在努力的小新~ 💖 超级爱分享,分享各种有趣干货! 👩‍💻 提供:模拟面试 | 简历诊断 | 独家简历模板 🌈 感谢关注,关注了你就是我的超级粉丝啦! &…

k8s中的容器探针

pod的容器健康检查---探针 probe:k8s对容器执行的定期检查,诊断。 探针的三种规则 所有的探针都是针对容器不是针对pod 1、 存活探针---livenessProbe:探测容器是否正常运行。如果发现探测失败,会杀掉容器。容器会根据重启策略…

B端产品经理学习-对用户进行需求挖掘

目录: 用户需求挖掘的方法 举例:汽车销售系统的用户访谈-前期准备 用户调研提纲 预约用户做访谈 用户访谈注意点 我们对于干系人做完调研之后需要对用户进行调研;在C端产品常见的用户调研方式外,对B端产品仍然适用的 用户需…

顺序表——习题

1. 轮转数组 代码实现&#xff1a; // 逆置数组 void nizhi_array(int *nums, int l, int r) { // 左闭右闭if (l > r) {return ;}for (int i l, j r; i < j; i, j--) {int temp nums[i];nums[i] nums[j];nums[j] temp;} }void rotate(int *nums, int numsSize, int…

Arduino驱动AS3935数字闪电传感器(闪电传感器)

目录 1、传感器特性 2、硬件原理图 3、控制器和传感器连线图 4、驱动程序 闪电传感器采用AMS独具创新的AS3935数字闪电传感芯片与Coilcraft

如何将Git的语言设置为中文

[rootiZ2zecg225xwld6g5g]# git pull Ya est actualizado. 问题描述&#xff1a; 如图所示&#xff0c;配置完git后&#xff0c;当每次拉取代码时发现提示语为西班牙语&#xff0c;想改为默认中文&#xff0c;尝试了很多次都失败了&#xff0c;最后发现是系统环境变量的问题。…

arguments arguments的认识 将arguments伪数组转为真数组

概述 arguments为伪数组&#xff0c;伪书组就是不能使用数组的方法 arguments这个值等于函数括号内的参数&#xff0c;以伪数组的方式体现 function ff(a,b,c){console.log(参数是,arguments); } ff(1,2,3)//结果&#xff1a;参数是&#xff0c;[1,2,3] 将arguments伪数组转为…

C语言中关于strcpy函数的理解

strcpy的功能是将源指向的字符串复制到另外一个字符串中 目标指向的数组的大小应该要足够长&#xff0c;避免让源字符串中的数据溢出 关于这个函数的具体用法&#xff0c;我们可以看看下面这个程序 注意&#xff1a;strcpy函数的头文件是<string.h>&#xff0c;我们在用…

Arduino开发实例-EMG 肌肉信号传感器

EMG 肌肉信号传感器 文章目录 EMG 肌肉信号传感器1、EMG 肌肉信号传感器介绍2、硬件准备及接线3、代码实现1、EMG 肌肉信号传感器介绍 在医学研究中,测量肌肉的活动、收缩和扩张非常重要。 EMG 肌肉传感器测量肌肉活动并产生信号以显示扩张和收缩量。 因此,输出取决于所选肌…

JavaWeb——后端之maven

三、后端Web开发 1. Maven 1.1 概念 概念&#xff1a; 一款用于管理和构建java项目的工具&#xff0c;是apache下的一个开源项目 作用&#xff1a; 依赖管理&#xff1a;jar包&#xff0c;避免版本冲突问题——不用手动导jar包&#xff0c;只需要在配置文件&#xff08;pom…