MySQL 查询固定时间段的数据

本文介绍了如何使用MySQL查询一周内每天9:00至11:30和13:00至15:00的历史数据。通过FROM_UNIXTIME、UNIX_TIMESTAMP、DATE_FORMAT等时间转换函数,将Unix时间戳转换为日期格式并进行时间判断,解决在Zabbix历史数据表history_uint中的查询问题。
摘要由CSDN通过智能技术生成

今天想用MySQL查点东西,需求如下:

查一周时间内的每天上午9点到11点半和下午1点到3点的所有数据。

数据库表结构比较简单,就是Zabbix的默认数据库表结构,查一下历史数据表。

history_uint 表结构如下:

字段名 类型 备注

itemid

bigint 监控项id
clock int epoch时间戳(unix时间戳),精确到秒
value bigint 监控项的值
ns int 纳秒

 

 

 

 

 

 

直接贴SQL吧,贴完再说思路:

SELECT
	a.itemid, FROM_UNIXTIME(a.clock) a_time, a.value
FROM
	history_uint a
WHERE
	itemid=29176
AND
	-- 时间段限制,一周或者任意时间段
	-- DATE_SUB(now(),INTERVAL 7 DAY) <= FROM_UNIXTIME(a.clock)
	a.clock BETWEEN UNIX_TIMESTAMP('2019-03-24 09:00:00
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值