如何求出每15分钟的总和,最大值,最小值,平均值?

realconst 2005-12-06 05:05:16
表结构
人数 时间
1 2005-12-1 14:12:16
2 2005-12-1 14:22:16
3 2005-12-1 14:47:16
11 2005-12-1 14:36:16
12 2005-12-2 10:22:16
3 2005-12-2 10:23:16

需要得到从正点开始,每隔15分钟的总和,最大值,最小值,平均值如下
总和 最大 最小 平均 时间
3 2 1 2 2005-12-1 14:22:16
11 11 11 11 2005-12-1 14:36:16
3 3 3 3 2005-12-1 14:47:16
15 12 3 8 2005-12-2 10:23:16

请问这个SQL怎么写啊?急救!!
...全文
142 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
js396859033 2005-12-06
  • 打赏
  • 举报
回复
学习
了缘 2005-12-06
  • 打赏
  • 举报
回复
笨方法,赫赫
了缘 2005-12-06
  • 打赏
  • 举报
回复
select max(时间) ,sum(人数) ,max(人数) ,min(人数),avg(人数)
from table
where 时间between convert(varchar(14) ,时间,120) + '00:00' and convert(varchar(14) ,时间,120) + '15:00'
union all
select max(时间) ,sum(人数) ,max(人数) ,min(人数),avg(人数)
from table
where 时间between convert(varchar(14) ,时间,120) + '15:00' and convert(varchar(14) ,时间,120) + '30:00'
union all
select max(时间) ,sum(人数) ,max(人数) ,min(人数),avg(人数)
from table
where 时间between convert(varchar(14) ,时间,120) + '30:00' and convert(varchar(14) ,时间,120) + '45:00'
union all
select max(时间) ,sum(人数) ,max(人数) ,min(人数),avg(人数)
from table
where 时间between convert(varchar(14) ,时间,120) + '45:00' and dateadd(hh,1,convert(varchar(14) ,时间,120) + '00:00')

22,209

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧