我有以下信息(按视图返回):
DateTime ItemID UserTyp Seconds
2012-01-01 10 S 12
2012-01-01 10 S 18
2012-01-01 11 S 22
2012-01-02 11 M 52
2012-01-02 10 S 120
2012-01-02 11 S NULL
2012-01-03 15 M 112
2012-01-03 12 S 182
2012-01-04 10 M NULL
我需要做的是按用户类型计算所有秒数的总和,但要计算五个周期。
期间按以下方式设置:
- 获取第一个和最后一个日期
- 五天一分为二
- 除法的结果是一个周期包含的天数
然后对于每个时期,根据记录的 DateTime 和 UserType,我应该得出以下记录:
Periods UserTypeS_SUM(Seconds) UserTypeM_SUM(Seconds)
1
2
3
4
5
另外,我应该在进行除法之前检查是否至少有 5 条记录——例如,如果我有 4 条,则只使用一个句点。
我知道它看起来并没有那么不同,我已经开始使用函数制作解决方案,但它看起来对我来说有点无效。是否有一些内置函数可以轻松做到这一点?
编辑:我真的很抱歉,但我忘记提到我应该在视图或表值函数中使用这个。在这种情况下不允许存储过程。