1

私は現在、いくつかの Oracle スクリプトを MS SQL に移植する必要がある任務に取り組んでいます。スケジュールされたジョブで問題が発生しました。Oracle スクリプトは次のようになります。

dbms_job.submit(job =>v_job, 
        what =>'begin pkg_report.REFRESH_MVIEWS; end;', 
        next_date =>Trunc(sysdate, 'HH24')+70/1440, interval =>'Trunc(sysdate, ''HH24'')+70/1440');

dbms_job.submit(job =>v_job, what =>'begin pkg_housekeeping.cleanup_daily; end;', next_date =>trunc(sysdate)+1, interval =>'trunc(sysdate)+1+1/24');

問題は、この切り捨てが何をすべきか理解していないことです。私はそれをSQL Developerで複製しようとしましたが、少し遊んでみました.フォーマット文字列のほとんどは非常に明白な結果(YEAR、MONTH、...)を持っていますが、HH24が何をすべきかわかりません. 末尾の +70/1440、+1、+1+1/24 のサフィックスは何ですか?

少し助けていただければ幸いです。前もって感謝します!

4

1 に答える 1

1

TRUNC現在の日付の時間要素を削除するため、コードは日付を今日の午前 0 時 (sysdate) に設定し、それに 1 日の 70/1440 を追加します。

1 日の 70/1440 は 01:10 (午前 10 時 10 分)

+1+1/24 は 1 日と 1/24 日を足すので、翌日の午前 1 時

于 2015-05-06T14:48:31.280 に答える