DB2中的SQL查询问题

时间:2010-07-05 05:18:27

标签: sql db2 timestamp

如何在DB2中编写查询以执行以下操作:

当前时间戳与时间戳字段之间的差异(以dB为单位)应为> = 4小时AND < = 24小时

3 个答案:

答案 0 :(得分:2)

你真的没有提供足够的信息来回答这个问题(也就是说,你只想要过去的数据,只是将来的数据等),但我们假设你想要的数据是时间戳列(“tscolumn”) )超过4小时,不到24小时:

select * 
from   table t
where  t.tscolumn between current timestamp - 4 hours 
                      and current timestamp - 24 hours

如果我的假设是错误的,那么重写它就很容易满足你的要求。

答案 1 :(得分:0)

尝试以下

select * from tableName where 
                 date <=  DATEADD(Hour, -4, CURRENT_TIME) and 
                 date date >=  DATEADD(Hour, -24, CURRENT_TIME)

答案 2 :(得分:-2)

select * 
from   table t
where  timestampdiff(8,char(current timestamp - time_from_table)) between 4 and 24  

此处时间戳(8, - 表示小时,以下是不同参数的值。

价值说明

1   Fractions of a second
2   Seconds
4   Minutes
8   Hours
16  Days
32  Weeks
64  Months
128 Quarters
256 Years