Tsql 从SQLServer中的表中获取时间(7)字段的平均值

Tsql 从SQLServer中的表中获取时间(7)字段的平均值,tsql,time,Tsql,Time,我在SQLServer数据库中有一个表,其中有一个名为“timetake”的字段,该字段的数据类型为time(7)。我希望能够在报告中显示这些行数的平均值,但迄今为止,我的工作不断出现错误“不允许从数据类型time显式转换为float” 任何关于正确格式的想法在这里使用,因为大多数在线示例似乎与日期时间数据类型或获得2次之间的差异等有关。这不是我要寻找的 AVG(CAST(s.TimeTaken AS FLOAT)) AS 'Average Time to Play Hole' 时间对于查找平

我在SQLServer数据库中有一个表,其中有一个名为“timetake”的字段,该字段的数据类型为time(7)。我希望能够在报告中显示这些行数的平均值,但迄今为止,我的工作不断出现错误“不允许从数据类型time显式转换为float”

任何关于正确格式的想法在这里使用,因为大多数在线示例似乎与日期时间数据类型或获得2次之间的差异等有关。这不是我要寻找的

AVG(CAST(s.TimeTaken AS FLOAT)) AS 'Average Time to Play Hole'

时间对于查找平均值来说是无效的数据类型,因此请尝试以下操作

Cast(DateAdd( ms,avg(DateDiff( ms, '00:00:00', s.TimeTaken)), '00:00:00' )  as time) as 'Average Time to Play Hole'

非常感谢。这很恰当。