嗨,我在sql server中有几个表每30秒记录一次数据。显然,过一段时间后,这变得有点笨重,我想做的是在过去24小时内每小时选择1个数据点,并将其放入单独的表中进行快速查询,所以我想在24小时内每小时一次,一周内每天两次,一个月内每天一次。我在每个数据点上都记录了日期时间。
我想在24小时内每小时设置一次
Select * from MiscTBL Where Date>= ((Currentdatetime - 24 hh)) group by hh
谢谢你的建议
我也使用sql server管理工作室,如果这是一个自动更新的过程,那将是伟大的,所以我有单独的表,我可以使用更快的查询数据在较短的预量化时间段
这样做将每小时返回1个样本:
select *
from ActivityLog
where id in
(select max(id) maxID
from ActivityLog
where activityDateTime between @startDateTime and @endDateTime
group by DATEPART(hour, activityDateTime))
我将使用这个概念来构建一个移动数据的存储过程,然后我将使用SQL Agent作业调度它根据需要经常运行。