意见箱
恒创运营部门将仔细参阅您的意见和建议,必要时将通过预留邮箱与您保持联络。感谢您的支持!
意见/建议
提交建议

SQLServer中groupby语句怎么做分组统计

来源:恒创科技 编辑:恒创科技编辑部
2023-12-15 09:54:59
这篇文章主要介绍“SQL Server中group by语句怎么做分组统计”的相关知识,下面会通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“SQL Server中group by语句怎么做分组统计”文章能帮助大家解决问题。


SQLServer中groupby语句怎么做分组统计

工作中要求对日志表中的时间戳字段进行分组。分组的条件是,相隔 1分钟间隔的被分到一组。

数据库表是这样的

SELECT COUNT(log_id) AS u_count FROM logdb.`log`
GROUP BY TIMESTAMP-TIMESTAMP%(1*60) 

其中timestamp 是数据库时间字段。 括号中的1 是间隔时间,1分钟。 如果是1小时,就写60,如果是30s 就写0.5
结果

那被分组的id 如何解决呢?分完组我们还需要 哪些记录被分到哪些组了。
我们可以这么做。

SELECT COUNT(log_id) AS u_count ,GROUP_CONCAT(DISTINCT log_id ORDER BY log_id DESC ) AS ids FROM logdb.`log`
GROUP BY TIMESTAMP-TIMESTAMP%(0.5*60) 

GROUP_CONCAT(DISTINCT log_id ORDER BY log_id DESC )
这里默认使用 , 分割 将 log_id穿成字符串,并且这些id是不重复,且排序递降。


以上就是关于“SQL Server中group by语句怎么做分组统计”的介绍了,感谢各位的阅读,希望这篇文章能帮助大家解决问题。如果想要了解更多知识,欢迎关注恒创科技,小编每天都会为大家更新不同的知识。
上一篇: SqlServer中怎么生成多维数据集,详细方法是什么 下一篇: SQL判断是否存在的方法是什么,怎么优化效率更高