2017-01-20 9 views
0

関数では、TIMESTAMP(6)の変数に一定の秒数を追加し、現在の瞬間が結果の前にあるかどうかを比較する必要があります。Oracle DB、TIMESTAMPに秒を追加して現在の瞬間と結果を比較する方法

TIMESTAMP変数に秒数を追加して現在の時刻をフォーマットで取得すると、結果と比較することができますか?どのように私はこの条件式を形成するのですか?

追加される秒の量は、型付き変数INTEGERに格納されます。

+0

systimestampはあなたに現在のシステムタイムスタンプを返します – Boneist

+0

結果はどうなりますか?例を挙げてください。 – TechEnthusiast

答えて

1

これは、タイムスタンプに秒を追加すると、システムの時間に対してチェックを実行する方法です。

select timestamp '2017-01-20 12:00:00.000000' as value, 
     timestamp '2017-01-20 12:00:00.000000' + interval '10' second as valuePlus10, 
     case 
     when timestamp '2017-01-20 12:00:00.000000' + interval '10' second > systimestamp then '> timestamp' 
     else '< timestamp' 
     end as checkVal 
from dual 

あなたはすでに、いくつかの数値変数に格納を追加するために、第2の数を持っている場合は、あなたが使用することができます

declare 
    vSeconds number := 10; 
    vTimestamp1 timestamp(6); 
    vTimestamp2 timestamp(6); 
begin 
    select vTimestamp1 + NUMTODSINTERVAL(vSeconds, 'second') 
    into vTimestamp2 
    from dual; 
end;  
関連する問題