回答

收藏

操作数数据类型时间对avg运算符无效。

技术问答 技术问答 118 人阅读 | 0 人回复 | 2023-09-13

我如何在以下查询中平均(time(4)):
. w% l6 ~" c% n6 r  select top 10 avg(e.Duration) from TimeTable e
0 k0 u7 l) C: ]8 p: L我收到以下错误:
7 F3 ]) h& G- T% x
8 ]4 V/ U8 |- d. A操作数数据类型时间对avg运算符无效。$ M4 Y9 y. ^/ Z7 s' w
  d* h3 M9 u6 }3 {
持续时间是类型time(4),例如:4 _! N" V7 u% \) Q6 B
Duration& i; M0 N# S( f" m7 n5 j
-------------5 T" T5 E/ V/ ^; ]# a6 b
00:00:10.0000
) d2 B4 ]6 m" g- l6 @' w                % g0 W/ z. w; C0 L* d) E
解决方案:8 ]0 ~( [* s/ {0 a
                . O1 @% E& Q! U; z

3 W$ V% o% G0 h! u* {; ?" k# [+ _0 b4 [" Z' k
                您可以使用DateDiff( ms, '00:00:00', e.Duration+ y' k6 ^8 _$ x) ?2 U2 m$ @
)将时间转换为整数毫秒。将其用于您的汇总,然后将结果转换回,例如Cast( DateAdd( ms, 1234, '00:00:00' ) as
; C; i" s* t& u" uTime )。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则