0

タイムスタンプを計算することで立ち往生しています。次の例のように、別のタイムスタンプで計算/合計するにはどうすればよいですか

Time (Timestamp in one column)
***********************
0:00:01
0:00:08
0:00:12
0:00:38
0:01:04
2:04:49
15:48:38
23:30:59
7:05:52
8:17:29

合計(タイムスタンプ)を表示したいのですが、hh:mi何か助けはありますか?

4

2 に答える 2

0

この例は、追加される値が TIME 列である場合 (元の質問に示されているように)、DB2 で機能します。秘訣は、時間を合計するのがはるかに簡単な経過秒数に変換することです。

WITH origTbl (origTime) AS (VALUES
( TIME( '0:00:01' ) ),
( TIME( '0:00:08' ) ),
( TIME( '0:00:12' ) ),
( TIME( '0:00:38' ) ),
( TIME( '0:01:04' ) ),
( TIME( '2:04:49' ) ),
( TIME( '15:48:38' ) ),
( TIME( '23:30:59' ) ),
( TIME( '7:05:52' ) ),
( TIME( '8:17:29' ) )
)
,
totSeconds( secs ) AS (
SELECT SUM( MIDNIGHT_SECONDS( origTime ) ) 
FROM origTbl
)
SELECT RTRIM( CHAR( secs/3600 ) ) || ':' || 
LPAD( RTRIM( CHAR( MOD(secs, 3600)/60 ) ), 2, '0' ) || ':' ||
LPAD( RTRIM( CHAR( MOD(secs, 60) ) ), 2, '0' ) AS totHMMSS FROM totSeconds
;

TOTHMMSS
-----------------
56:49:50

  1 record(s) selected.
于 2014-02-25T22:22:53.380 に答える