2

嗨,我在 DB2 中有表:

ID       TIME1        TIME2       
1000     480.5        30:30:00

我想得到 TIME1-TIME2

ID       TIME1-TIME2 
1000       450.0 

TIME1 是以 HOURS 为单位的十进制值 - 所以 480.5 小时。TIME2 是字符串值:30:30:00(30 小时 30 分 00 秒)

如何得到这个减法?

谢谢!

4

1 回答 1

2

您之前必须将两个字段(字符串和十进制字段)转换为 INTERVAL 数据类型,然后执行减法运算。看看这篇解释如何在 DB2 中处理间隔的文章。

使用您将在该文章中找到的功能,您可以通过这种方式安排解决方案,例如:

SELECT ID, 
NUMTODSINTERVAL(TIME1, 'SECOND') - TO_DSINTERVAL('0 ' || TIME2) AS TIME1-TIME2 
FROM table
于 2012-07-08T14:11:29.650 回答