sql - datediffs 的不同计数不是那么明显
问题描述
我希望返回单个 ID 的计数和自创建记录以来的分钟数。
我有这个作为查询:
SELECT DISTINCT
batchid AS 'ID'
, COUNT(batchid) AS 'Count'
, DATEDIFF (MINUTE,CONVERT(char(10),MIN([createdOn]), 108),CONVERT(char(10),GETDATE(), 108))
FROM [UpdateRecords]
WHERE [status] = 'Pending'
GROUP BY batchId,createdOn
ORDER BY batchId
它返回 ID、计数和分钟。
ID 计数分钟 171836 1 28 171836 4 28 171836 10 28 171836 21 28
问题就出现了,同一个ID会出现多次。加在一起时,该 ID 的计数是准确的。
我想要一个不同的计数,按 ID 以及分钟数
ID 计数分钟 171836 36 28
我如何使用分钟来做到这一点?这可以显示小时和分钟吗?
解决方案
您需要按 Select 中的相同项目分组:
SELECT
batchid AS 'ID'
, COUNT(batchid) AS 'Count'
, DATEDIFF (MINUTE,CONVERT(char(10),MIN([createdOn]), 108),CONVERT(char(10),GETDATE(), 108))
FROM [UpdateRecords]
WHERE [status] = 'Pending'
GROUP BY batchId, DATEDIFF (MINUTE,CONVERT(char(10),MIN([createdOn]), 108),CONVERT(char(10),GETDATE(), 108))
ORDER BY batchId
推荐阅读
- java - Is there existing functionality to search through a JSON object and replace values
- apache-spark - Tensorflow Java 在 YARN 上使用过多内存和火花
- asp.net - 获取添加的实体状态主键 Asp.Net 实体框架
- php - 从 php 页面获取数据并将其显示在 react js 视图中
- snakemake - Snakemake 包装器无法打开环境文件:HTTP 错误 404:未找到
- php - 在这个例子中如何使用嵌套循环?
- python - 连续处理 .csv 文件并在特定列具有非空单元格时提取行
- javascript - 使用 Jquery 操作 div 集合的 DOM
- react-redux - 函数无效,因为在包装 Provider 时会抛出 React 子错误
- python-3.x - Selenium-python 拖放不起作用