首页 > 解决方案 > 如何在 Db2 中查找两个时间戳之间的小时数

问题描述

我想减去 2 个时间戳来获得它们之间的小时数。我使用了 days_between 函数,但它返回了一个无效操作错误:函数 days_between 没有时区设置。下面是我要减去的示例表和时间戳。

job_number     timestamp 1         timestamp 2
123456789   2020-03-16 16:59:26   2020-03-17 10:58:25
134232125   2020-03-18 08:57:05   2020-03-19 01:47:26

标签: sqldb2

解决方案


您可以使用TIMESTAMPDIFF()带有数字表达式等于的函数8来表示hour差异:

SELECT job_number, TIMESTAMPDIFF(8,CHAR(timestamp2 - timestamp1)) AS ts_diff 
  FROM T

Demo


推荐阅读