DB2 日期格式连接特定时间



我正在尝试查询昨天早上 6 点到今天早上 6 点之间发生的数据。

我在连接时遇到问题。

这就是我尝试过的。

Where update_time between date(CURRENT DATE,'mm/dd/yyyy 06:00:00')- 1 DAYS 
                      and date(CURRENT DATE,'mm/dd/yyyy 06:00:00')

试试这个:

WHERE UPDATE_TIME 
BETWEEN TIMESTAMP(CHAR(CURRENT DATE,ISO) || ' 06:00:00') - 1 DAY
AND TIMESTAMP(CHAR(CURRENT DATE,ISO) || ' 06:00:00')

更新以回答X-Zero的评论:

DB2 函数CHAR(CURRENT DATE,ISO)获取当前日期,并将其转换为ISO格式的字符串。 以今天的日期计算,CHAR 函数将返回"2012-09-18"。

接下来,我们将 (||) 时间字符串连接到日期字符串。 时间字符串中的空格以正确的格式创建字符 DB2 时间戳。 "2012-09-18 06:00:00"。

最后,DB2 函数TIMESTAMP获取字符 DB2 时间戳并将其转换为实际的 DB2 时间戳。

最新更新