MySql数据库 查询时间序列间隔


Posted in MySQL onMay 11, 2022

mysql时间序列间隔查询

在时间序列处理中,采集到的数据保存在数据表中,采集的频率可能是固定间隔(10秒,1小时或者1天),但往往是不固定的。

处理的时候要固定一个时间间隔进行查询,比如10秒一次的采样,处理的时候变成每小时一次。

可以用以下方法:

DELIMITER $$
CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_RealData`(IN `timeBegin` DATETIME, IN `timeEnd` DATETIME, IN `timeInterval` INT)
    MODIFIES SQL DATA
    SQL SECURITY INVOKER
    COMMENT '/*存储过程:按起始、终止时间,以及时间间隔,抽取数据*/'
BEGIN
        SET @time := '1000-01-01 00:00:00';
        SET @interval := timeInterval;
        SELECT * FROM realdata_table
        WHERE `realdata_table`.`received_time` >= timeBegin AND `realdata_table`.`received_time` <= timeEnd
        AND TIMESTAMPDIFF( SECOND, @time, `realdata_table`.`received_time` ) >= @interval
        AND @time := `realdata_table`.`received_time`;
END$$
DELIMITER ;

调用的时候:

SET @p0='2016-03-29 00:00:00'; 
SET @p1='2016-03-31 00:00:00'; 
SET @p2='3600'; 
CALL `proc_RealData`(@p0, @p1, @p2);

mysql查询指定时间间隔数据

CREATE DEFINER=`root`@`localhost` PROCEDURE `proc_RealData`(IN `timeBegin` DATETIME, IN `timeEnd` DATETIME, IN `timeInterval` INT)
    MODIFIES SQL DATA
    SQL SECURITY INVOKER
    COMMENT '/*存储过程:按起始、终止时间,以及时间间隔,抽取数据*/'
BEGIN
        SET @time := '1000-01-01 00:00:00';
        SET @interval := timeInterval;
        SELECT * FROM em_air_humidity
        WHERE `em_air_humidity`.`DateTime` >= timeBegin AND `em_air_humidity`.`DateTime` <= timeEnd
        AND TIMESTAMPDIFF( SECOND, @time, `em_air_humidity`.`DateTime` ) >= @interval
        AND @time := `em_air_humidity`.`DateTime`;
END
MySQL 相关文章推荐
详解Mysql 函数调用优化
Apr 07 MySQL
MySQL创建索引需要了解的
Apr 08 MySQL
MySQL EXPLAIN输出列的详细解释
May 12 MySQL
详解GaussDB for MySQL性能优化
May 18 MySQL
linux下导入、导出mysql数据库命令的实现方法
May 26 MySQL
MySQL修改默认引擎和字符集详情
Sep 25 MySQL
MySQL实例精讲单行函数以及字符数学日期流程控制
Oct 15 MySQL
SQL优化老出错,那是你没弄明白MySQL解释计划用法
Nov 27 MySQL
mysql数据插入覆盖和时间戳的问题及解决
Mar 25 MySQL
MySQL 数据表操作
May 04 MySQL
MySQL 数据 data 基本操作
May 04 MySQL
jdbc中自带MySQL 连接池实践示例
Jul 23 MySQL
Mysql中常用的join连接方式
May 11 #MySQL
MySQL的prepare使用以及遇到的bug
May 11 #MySQL
MySQL批量更新不同表中的数据
May 11 #MySQL
mysql查找连续出现n次以上的数字
May 11 #MySQL
mysql如何查询连续记录
May 11 #MySQL
mysql 体系结构和存储引擎介绍
MySQL数据库 安全管理
May 06 #MySQL
You might like
PHP简单处理表单输入的特殊字符的方法
2016/02/03 PHP
laravel解决迁移文件一次删除创建字段报错的问题
2019/10/24 PHP
PHP解密支付宝小程序的加密数据、手机号的示例代码
2021/02/26 PHP
Prototype使用指南之ajax
2007/01/10 Javascript
又一个小巧的图片预加载类
2007/05/05 Javascript
javascript与CSS复习(《精通javascript》)
2010/06/29 Javascript
IE6下拉框图层问题探讨及解决
2014/01/03 Javascript
JS判断变量是否为空判断是否null
2014/07/25 Javascript
javaScript中slice函数用法实例分析
2015/06/08 Javascript
AngularJS延迟加载html template
2016/07/27 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
浅析上传头像示例及其注意事项
2016/12/14 Javascript
bootstrap是什么_动力节点Java学院整理
2017/07/14 Javascript
JS原生带小白点轮播图实例讲解
2017/07/22 Javascript
微信小程序 获取javascript 里的数据
2017/08/17 Javascript
详解Vuex中mapState的具体用法
2017/09/28 Javascript
jquery实现图片跟随鼠标的实例
2017/10/17 jQuery
微信小程序实现发微博功能的示例代码
2020/06/24 Javascript
通过Python使用saltstack生成服务器资产清单
2016/03/01 Python
对numpy 数组和矩阵的乘法的进一步理解
2018/04/04 Python
Python字典创建 遍历 添加等实用基础操作技巧
2018/09/13 Python
Python格式化输出字符串方法小结【%与format】
2018/10/29 Python
Python模块、包(Package)概念与用法分析
2019/05/31 Python
Flask框架学习笔记之模板操作实例详解
2019/08/15 Python
pycharm 2020 1.1的安装流程
2020/09/29 Python
python+selenium爬取微博热搜存入Mysql的实现方法
2021/01/27 Python
专门出售各种儿童读物的网站:Put Me In The Story
2016/08/07 全球购物
优衣库英国官网:UNIQLO英国
2016/12/25 全球购物
计算机专业个人求职自荐信
2013/09/21 职场文书
促销活动方案模板
2014/02/24 职场文书
自动一体化专业求职信
2014/03/15 职场文书
2014年物业公司工作总结
2014/11/22 职场文书
城南旧事电影观后感
2015/06/16 职场文书
python实现三阶魔方还原的示例代码
2021/04/28 Python
Android开发之底部导航栏的快速实现
2022/04/28 Java/Android
git stash(储藏)的用法总结
2022/06/25 Servers