0

i (AS/400) 上の DB2 にクエリを実行しています。データ型が TIME の列に対する単純な SELECT ステートメントは 00:00:00 を返しますが、CHAR() 関数を使用すると「24:00:00」が返されます。

24:00:00 が有効な時刻であることは理解していますが、ネイティブの TIME が 00 を返すのに CHAR() が 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 に答える