1
这是问题的一个后续从我以前的帖子SQL循环由/排序
我有下面的代码将查询时,我们的代理商在特定的时间已登录的数据库。它在某一天很好地工作,但我现在需要在选定的时间段内完成。我不确定从哪里开始调整!我需要按日期和时间进行分组的结果...所以它看起来如下
date hour count
10/10/11 22 52
10/10/11 23 24
11/10/11 00 12
11/10/11 01 33
所以24小时内将显示所选范围内的每个日期。
ALTER procedure [dbo].[LoggedOnCountByHour]
@DayToCheck datetime,
@HelplineID int
as
select dateadd(hour, N.number, @DayToCheck) as [date_hour],
DATEPART(hh,dateadd(hour, N.number, @DayToCheck)) as [Hour],
count(L.ExpertRecID) as [count of users]
from master..spt_values as N
left outer join WorkDetail as L
on L.KickedOffTime > dateadd(hour, N.number, @DayToCheck) and
L.LoginTime < dateadd(hour, N.number + 1, @DayToCheck)
left join PoolMembership P on P.ExpertRecID = L.ExpertRecID
where N.Type = 'P' and
N.Number between 0 and 23 and
P.HelplinePoolID = @HelplineID
group by dateadd(hour, N.number, @DayToCheck), DATEPART(hh,dateadd(hour, N.number, @DayToCheck))
有什么想法? 非常感谢
为SQL Server 2000添加标签。我想你仍然使用它? –