将VARCHAR2转换为Number
我有一个表,其中有一个名为的列duration。其数据类型为VARCHAR2。
我想对这一栏进行总结duration。
00:56:3002:08:40
01:01:00
总计=> 04:05:10
如何使用ANSI SQL或Oracle SQL执行此操作?
回答:
您可以使用来分隔小时,分钟和秒SUBSTR,然后将SUM其向上,最后使用NUMTODSINTERVALfunction将其转换为INTERVALtype。
SELECT NUMTODSINTERVAL (SUM (total_secs), 'second') FROM (SELECT SUBSTR (duration, 1, 2) * 3600
+ SUBSTR (duration, 4, 2) * 60
+ SUBSTR (duration, 7, 2) total_secs
FROM user_tab);
以上是 将VARCHAR2转换为Number 的全部内容, 来源链接: utcz.com/qa/399469.html

