我在SQL Server中遇到SUM
运算符问题。当我写这个查询时:
SELECT StudentID, StudentName, SUM(time) as 'TotalTime'
FROM WorkNote
GROUP BY StudentID, StudentName
我收到此错误:
操作数数据类型时间对于sum运算符无效。
是否有SUM
的其他方法或计算记录的总时间?
在我的WorkNote
表中,列time
的类型为Time(7)
,我希望SUM
每个学生的所有(总计)时间。
答案 0 :(得分:17)
如果时间在hh/mm/ss
那么::
SELECT studentid,studentname,
DATEADD(ms, SUM(DATEDIFF(ms, '00:00:00.000', mytime)), '00:00:00.000') as time
FROM
worknote
答案 1 :(得分:1)
您可以在几秒钟内完成时间并将其相加。
SELECT StudentID,
StudentName,
sum( DATEPART(SECOND, [time]) + 60 *
DATEPART(MINUTE, [time]) + 3600 *
DATEPART(HOUR, [time] )
) as 'TotalTime'
FROM WorkNote
GROUP BY StudentID, StudentName