如何利用mysql语法获取指定时间段的平均值?我可以先获取起始时间和结束时间,再利用while
循环来实现。下面编程教程网小编给大家详细介绍一下具体实现方法!
具体代码如下:
DROP PROCEDURE IF EXISTS `get_avg`;
DELIMITER ;;
CREATE DEFINER=`root`@`%` PROCEDURE `get_avg`(in iStartTime datetime, in iEndTime datetime)
BEGIN
declare vSql varchar(10240) default '';
declare vNextTime datetime;
while(iStartTime < iEndTime) do
##每次加一个小时
set vNextTime = date_add(iStartTime,interval 3600 second);
##单引号是特殊字符,要表示单引号,使用 '' 进行转义
set vSql = concat(vSql,'union select 100, avg(`value`) from t1 where time between ''',iStartTime,''' and ''', vNextTime,''' ');
set iStartTime = vNextTime;
end while;
set vSql = substring(vSql,7);
##看看拼接的字符串是否正确
-- select vSql;
set @vSql = vSql;
prepare stmt from @vSql;
execute stmt;
deallocate prepare stmt;
END
;;
DELIMITER ;
以上是编程学习网小编为您介绍的“mysql语法如何获取某个时间段的平均值”的全面内容,想了解更多关于 mysql 内容,请继续关注编程基础学习网。
沃梦达教程
本文标题为:mysql语法如何获取某个时间段的平均值
猜你喜欢
- 让MySQL数据库跑的更快 为数据减肥 2023-12-22
- Redis、Memcache和MongoDB的区别 2024-03-03
- 面试题锦集:1、数据库三大范式,2、mysql索引类型及作用,3、事务的特性和隔离级别 2024-02-22
- mysql递归函数with recursive的用法举例 2022-09-02
- MySQL Buffer Pool怎么提高页的访问速度 2024-04-13
- idea配置检查XML中SQL语法及书写sql语句智能提示的方法 2023-12-05
- 探讨下如何更好的使用缓存 —— Redis缓存的特殊用法以及与本地缓存一起构建多级缓存的实现 2024-03-02
- python中如何提高图像质量 2023-07-28
- 史上最全PostgreSQL DBA最常用SQL 2023-07-21
- redis分布式锁redisson 2024-03-10