2009-06-10 4 views
0

私はDB2 on i(AS/400)を照会しています。データ型がTIMEの列のプレーンなSELECT文は00:00:00を返しますが、CHAR()関数を使用すると'24:00:00 'が返されます。DB2 CHAR()関数は、00:00:00の時間フィールドに「24:00:00」を戻すのはなぜですか?

24:00:00は有効な時間ですが、ネイティブTIMEが00を返すとCHAR()が24を返すのはなぜですか? V5R4で

+0

TIME値が00:00:00の1000万件以上のレコードがありますが、CHAR()が使用されているときは、そのうちの1つだけが'24:00:00 'を返します。 – user23185

答えて

0

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を得ている理由はわかりません。

私も試してみました:00:

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

は多分24:00:00値は'00と表示された思考00' を、これは示しています

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

ほとんどすべての時間のためにフォーマット(* HMS、ISO)。

関連する問題