当我运行这个(SQL Server 2008 R2中):分组/聚合在SQL Server 2008 R2
SELECT [UserId]
,[StateDuration]
,[StatusKey]
FROM [AgentActivityLog]
WHERE [StatusDateTime] between '2012-01-01' and '2012-12-31'
我得到每个用户ID一排这样的: 用户ID StatusDateTime StatusKey
cfrinco 3456 Meeting
echartl 23456 Available
mbarbewar 3256 Lunch
bsantiago 46565 Available
bsantiago 79 Follow Up
fburger 5464 Available
哪告诉我几秒钟内每个用户处于每种状态的时间。
当然,每个日期每UserId
会有很多条目。 换句话说,用户,在一天内,从可用到会议为可用以午饭可用等
我想要做的总时间(秒)每UserId
,每StatusKey
是,每个日历日。所以它看起来像这样:
cfrinco 3456 Meeting '2012-01-01'
cfrinco 45678 Available '2012-01-01'
cfrinco 7845 Meeting '2012-01-02'
cfrinco 32541 Available '2012-01-02'
cfrinco 4455 Meeting '2012-01-03'
cfrinco 12456 Available '2012-01-03'
fburger 3456 Meeting '2012-01-01'
fburger 75489 Available '2012-01-01'
fburger 3541 Lunch '2012-01-01'
fburger 5486 Meeting '2012-01-02'
fburger 64587 Available '2012-01-02'
fburger 3614 Lunch '2012-01-02'
fburger 3225 Meeting '2012-01-03'
fburger 35414 Available '2012-01-03'
fburger 3745 Lunch '2012-01-03'
您的帮助是非常感谢。
对不起,我不清楚。每个日期每个'UserId'都会有很多条目。换句话说,一天中的用户将从可用到会议到可用到午餐到可用等。谢谢! – Amarundo