期間の計算

SUBDUR 命令は、次の期間の計算にも使用することができます。

  1. 2 つの日付
  2. 日付とタイム・スタンプ
  3. 2 つの時刻
  4. 時刻とタイム・スタンプ
  5. 2 つのタイム・スタンプ

演算項目 1 と演算項目 2 のデータ・タイプは、上記に指定した通り、矛盾しないものでなければなりません。

演算項目 1 は必須で、日付、時刻、またはタイム・スタンプ・フィールド、 サブフィールド、配列、配列要素、定数、またはリテラルを入れることが できます。

演算項目 2 も必須で、日付、時刻、またはタイム・スタンプ・フィールド、配列 、配列要素、リテラル、または定数を入れることができます。

次の期間コードが有効です。

結果は整数の数字で、剰余は廃棄されます。 例えば、61 分は 1 時間と等しく、59 分は 0 時間に等しくなります。

結果フィールドは 2 つの副演算項目から構成されます。 最初の副演算項目は、 この命令の結果が入れられる、小数点以下の桁数がゼロの数値フィールド、 配列、または配列要素の名前です。 2 番目の副演算項目には、期間のタイプを 示す期間コードが入ります。 演算項目 1 の日付が演算項目 2 の日付より速い場 合には、結果フィールドは負になります。

日付時刻フィールドの処理の詳細については、日付命令を参照してください。

注:
マイクロ秒の期間 (*mseconds) の計算は、期間に対する 15 桁のシステム の制限を超えることがあって、エラーまたは切り捨ての原因になります。 このよ うな状況は、演算項目 1 と演算項目 2 の指定に 32 年と 9 か月を超える差があ る時に起こります。