请问针对时间段从每天早上7点开始统计每十分钟人

解决思路:

我以前做过一个关于月份的,是说每3个月以分组,其实是一样的。不过可能啊,整体数据量大会有问题。如果你只是求一天的,那绝对没问题。
【1】如果只是当天,那么你以当天七点为准,算当天所有时间与它的分钟差,然后group by 分钟差/10 即可
【2】如果是全部数据的话,那么你在where里把时间段条件加上,然后找个最早的时间点为准 group by 当前时间与最早时间点的分钟差/10

这位朋友这样是死写,本文以当天为例啊

【1】构建个表测试一下

【2】利用分钟差/10分组

【3】显示不直观,转换成时间显示

SELECT DATEDIFF( Minute, '2017-01-01 07:00:00', '2017-01-01 7:18:20')create table test104(
id  int identity(1,1),
[time] datetime
)
insert into test104 values('20180301 07:05:05')
insert into test104 values('20180301 07:06:05')
insert into test104 values('20180301 07:15:05')
insert into test104 values('20180301 07:16:05')
insert into test104 values('20180301 07:25:05')
insert into test104 values('20180301 07:26:05')
insert into test104 values('20180301 07:35:05')
insert into test104 values('20180301 07:36:05')
insert into test104 values('20180301 07:45:05')
insert into test104 values('20180301 07:46:05')
insert into test104 values('20180301 07:55:05')
insert into test104 values('20180301 07:56:05')select   dateadd(minute,DATEDIFF( Minute, '20180301 07:00:00', time)/10*10,'20180301 07:00:00' ),count(1) from test104
group by  DATEDIFF( Minute, '20180301 07:00:00', time)/10

方法2:利用分钟构造出想要的分钟列。

  比如  2018-03-01 07:56:05   ,构造出  2018-03-01 07:50:00

  核心思想

    (1)分钟数56拿出来,然后让其变成50

    (2)怎么变成50?--》56-56%10 = 50

    (3)怎么去掉后面的秒呢?用convert解决

select   dateadd(minute,datepart(minute,time)%10*(-1),time )  as example_col
, convert(char(16),   dateadd(minute,datepart(minute,time)%10*(-1),time)   ,120)+':00' as [group_time]
,*  from test104

  后面的分组就不用多说了,直接分就OK

select group_time,count(1) as [时间段内记录数],max(time) as [时间段内最大时间],min(time) as [时间段内最小时间]
from
(select   dateadd(minute,datepart(minute,time)%10*(-1),time )  as example_col, convert(char(16),   dateadd(minute,datepart(minute,time)%10*(-1),time)   ,120)+':00' as [group_time],*  from test104
) t
group by group_time

上述2种办法适合于任意维度的时间操作

关于本文更好的办法,直接 --但仅限于这种10分钟的

group BY LEFT(startTime,15) 

转载于:https://www.cnblogs.com/gered/p/8549241.html

sql server 以10分钟分组 统计人数相关推荐

  1. 【SQL Server】10分钟快速安装SQL Server

    下载文件 https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 任意选择一个下载,大概6M左右 右键以管理员运行第一个SQl2 ...

  2. (SQL语句)按指定时间段分组统计

    我现在有一张表:   列名1                时间 03174190188 2009-11-01 07:17:39.217 015224486575 2009-11-01 08:01:1 ...

  3. 【4 - 分组】Sql Server - 郝斌(分组group by、过滤having、聚合函数max() / count()、排序order by、select语句的执行顺序)

    课程地址:数据库 SQLServer 视频教程全集(99P)| 22 小时从入门到精通_哔哩哔哩_bilibili ​ 目录 group by(分组) group by a,b 的用法 having( ...

  4. 更新SQL Server实例所有数据库表统计信息

    引出问题 自从上次菜鸟为老鸟解决了<RDS SQL SERVER 解决中文乱码问题>问题,老鸟意犹未尽,决定再想个招来刁难刁难菜鸟:"我最近做T-SQL性能调优的时候,经常发现执 ...

  5. SQL Server 2016:实时查询统计

    一个数据库查询超时了,而你并不知道原因.估计查询计划可以揭示问题所在,因此,你彻底地消除了超时.但一个小时后,查询还在运行,而你无法获得真正的执行计划.要是有一种方法可以找出服务器内部实际正在发生的事 ...

  6. php按时间分组的sql语句,(SQL语句)按指定时间段分组统计

    ---------------------------------------Author : liangCK 梁爱兰--Comment: 小梁 爱 兰儿--Date   : 2010-01-02 1 ...

  7. mysql group by 季度_sql server如何按季度分组统计所有的数据

    展开全部 和按32313133353236313431303231363533e78988e69d8331333365663566月份组的原理是一样的吧! 按季度分组和按月分组的区别应该就是时间段的区 ...

  8. sql server 修改IDENTITY 字段 的统计当前值

    一个表数据是从另一服务器同步过来的.现在数据已超过了 3514万条,但插入值时,提示不能插入重复键值 320. 查看表的统计时间,看到是N年前统计的. 手工更新表统计信息: UPDATE STATIS ...

  9. sql server模糊查询、分组

    一.系统函数  1.convert(类型[length] ,表达式[,样式])  2.isnull(表达式,默认值)  字符函数:   len() 长度   ltrim()|rtrim()去除左右空格 ...

最新文章

  1. 《CSS揭秘》-背景与边框
  2. 连载:阿里巴巴大数据实践—数据建模综述
  3. 关于ASCII字符的那些事儿
  4. OpenShift 4 - Fedora CoreOS (3) - 定制 CoreOS ISO
  5. web 富文本编辑器总结
  6. CISA 已遭利用漏洞列表新增17项
  7. 用 tf.data 加载图片
  8. 网络安全学习笔记--《暗战强人:黑客攻防入门全程图解》
  9. 吐血推荐|2万字总结Mac所有应用程序、软件工具和相关资料
  10. U8来料报检保存出错
  11. vmware 14 pro许可证
  12. LATEX参考文献添加文章doi号并嵌入超链接+IEEE期刊缩写查询
  13. Graph Meta Network for Multi-Behavior Recommendation精读
  14. win10下pytorch 安装以及查看版本
  15. 顶级在线图片处理工具Photopea
  16. Java整合ORC识别验证码
  17. Java 开发规范文档
  18. 微信支付分(四)--取消支付分订单
  19. Machine Learning - A/B Test
  20. android 角标框架,Android 实现桌面未读角标

热门文章

  1. Matlab 中prod函数的使用
  2. 机器学习-朴素贝叶斯分类
  3. pandas.describe()参数的意义
  4. TX2+GStreamer+OpenCV读取显示网络摄像头
  5. linux如何查看桌面环境变量,如何设置和查看Linux系统的环境变量
  6. 铺磁砖,给定M*N的格子,用u*v的瓷砖去铺满,有多少种铺法
  7. MySQL之User(用户)和Privilege(权限)
  8. kaggle实战—泰坦尼克(五、模型搭建-模型评估)
  9. 正则-Strip函数
  10. toj 4610 Biggest Number