我需要一个查询来计算 SQL Server 2005 中每个不同时间戳的用户实例数

I need a query to count the number of user instances for each distinct timestamp in SQL Server 2005

这是我的数据table:

userid  timestamp
------------------------
user1   2017-08-15 17:00
user1   2017-08-15 17:00
user1   2017-08-15 17:00
user2   2017-08-15 17:00
user2   2017-08-15 17:00
user3   2017-08-15 17:00
user1   2017-08-15 18:00
user1   2017-08-15 18:00
user2   2017-08-15 18:00
user2   2017-08-15 18:00
user2   2017-08-15 18:00
user3   2017-08-15 18:00

我希望结果如下所示:

userid    countoftimestamp
-----------------------------
user1     3_2017-08-15 17:00
user2     2_2017-08-15 17:00
user3     1_2017-08-15 17:00
user1     2_2017-08-15 18:00

等等。

SELECT userid, timestamp, count(*)
FROM datatabable
GROUP BY  userid, timestamp

您可能注意到我使用 varchar(16) 将您的时间戳截断为分钟(不包括秒和毫秒)

例子

Select userid
      ,countoftimestamp = cast(sum(1) as varchar(25))+'_'+convert(varchar(16),timestamp,20)
 From  YourTable
 Group By userid,convert(varchar(16),timestamp,20)

Returns