Oracle には、HH24:MI:SS という形式の 2 つの時間文字列があります。これら 2 つを加算して、結果を 10 進数で取得したいと考えています (Oracle である日時を別の日時から減算した後に得られるものと同じように)。何か助けはありますか?
質問する
2408 次
3 に答える
2
これを試して
SELECT
( TO_DATE ( '13:00:00',
'HH24:MI:SS' )
- TO_DATE ( '12:00:00',
'HH24:MI:SS' ) )
AS DECIMALS,
( TO_DATE ( '13:00:00',
'HH24:MI:SS' )
- TO_DATE ( '12:00:00',
'HH24:MI:SS' ) )
* 24
AS HOURS,
( TO_DATE ( '13:00:00',
'HH24:MI:SS' )
- TO_DATE ( '12:00:00',
'HH24:MI:SS' ) )
* 24
* 60
AS MINUTES,
( TO_DATE ( '13:00:00',
'HH24:MI:SS' )
- TO_DATE ( '12:00:00',
'HH24:MI:SS' ) )
* 24
* 60
* 60
AS SECONDS
FROM
DUAL;
答え:
DECIMALS HOURS MINUTES SECONDS
0.0416666666666667 1 60 3600
于 2013-10-31T13:42:02.873 に答える
0
SELECT ROUND
(
( ( TO_DATE(t1, 'HH24:MI:SS') - TO_DATE(t2, 'HH24:MI:SS') ) * 24 ) / 60 * 60
, 2
) AS t_minus
FROM
(
SELECT '22:10:00' AS t1
, '21:05:00' AS t2
FROM DUAL
);
于 2013-10-31T15:20:25.900 に答える