0

我正在 i (AS/400) 上查询 DB2。对数据类型为 TIME 的列的普通 SELECT 语句返回 00:00:00,但是当我使用 CHAR() 函数时,它返回“24:00:00”。

我知道 24:00:00 是一个有效时间,但为什么 CHAR() 在本地 TIME 返回 00 时会返回 24?

4

1 回答 1

0

在 V5R4 上:

CREATE TABLE TEST (FIELD1 TIME NOT NULL WITH DEFAULT)

INSERT INTO TEST VALUES('00:00:00')

SELECT FIELD1, CHAR(FIELD1) FROM TEST

显示:

FIELD1    CHAR ( FIELD1 ) 
00:00:00     00:00:00     

不知道为什么你会得到 24:00:00。

我也试过:

INSERT INTO TEST VALUES('24:00:00')

认为可能 24:00:00 值显示为 '00:00:00' 但这表明:

FIELD1    CHAR ( FIELD1 ) 
00:00:00     00:00:00     
24:00:00     24:00:00    

适用于几乎所有时间格式(*HMS、ISO)。

于 2009-06-10T20:22:58.277 回答