2016-04-28 6 views
0

私はストアドプロシージャのパラメータとして28-APR-2016 10:05:07の日付を持っています。これは文字列の日付としても現在の時刻である可能性があります。Oracleでdatetimeを変更し、時刻を午前9時に設定します。

シフト開始タイミングを確認するには、時刻を9 amに設定する必要があります。

SELECT TO_DATE('28-APR-2016 10:05:07', 'DD-MON-YYYY HH24:MI:SS') FROM dual; 

私はoracleを初めて利用しています。ヘルプは高く評価されます。あなたは午前9時とのデートをしたい場合は

答えて

3

、あなたが行うことができます。

SELECT TRUNC(TO_DATE('28-APR-2016 10:05:07', 'DD-MON-YYYY HH24:MI:SS')) + 9/24.0 
FROM dual; 

あなたはまた、使用することができます。

SELECT TRUNC(TO_DATE('28-APR-2016 10:05:07', 'DD-MON-YYYY HH24:MI:SS')) + INTERVAL '9' HOUR 
FROM dual; 

私はちょうど昔ながらので、私がする傾向がありますよ最初の方法を使用してください。

+0

ゴードンさん、ありがとうございます。しかし、このクエリは、私に文字列形式の日付を与えます。私はそれをテーブル列 –

+3

@MayankPathakとさらに比較するために使用する必要があります。 。 。いいえ、これは 'date'カラムとしての値を与えます。 –

+0

@MayankPathak - あなたがしなければならない文字列として取得するには 'TO_DATE(TRUNC(TO_DATE('28 -APR-2016 10:05:07 '、' DD-MON-YYYY HH24:MI:SS ' ))+ INTERVAL '9' HOUR、 'DD-MON-YYYY HH24:MI:SS') FROM dual; –

関連する問題