SQL语句实现:输入开始和结束时间,得到1小时间隔的平均数据。

在项目中遇到一个客户要求用一条sql语句,查询出以1小时为间隔的平均数据。记录下来,以供参考!

select orgName as 企业名,proName as 工程名,refname as 冷库名,

 dateadd(ss,datepart(minute,'开始时间')*60+datepart(SECOND,'开始时间'),dateadd(hour,DATEPART(hour,intime),convert(varchar(10),intime,120))) as 时间间隔,

 AVG(data) as 平均温度,

 MAX(data) as 最大温度,

 MIN(data) as 最低温度

from View_Fdaprefhisdata_3

where inTime between '开始时间' and '结束时间' and  probetype=0

group by orgName,proName,refname,dateadd(ss,datepart(minute,'开始时间')*60+datepart(SECOND,'开始时间'),dateadd(hour,DATEPART(hour,intime),convert(varchar(10),intime,120)))

结果如下:

SQL语句实现:输入开始和结束时间,得到1小时间隔的平均数据。_第1张图片

你可能感兴趣的:(sqlserver)