AYM - 月数の加算または減算
AYM 関数は、年月フォーマットの日付と指定した月数の和または差を計算します。CHGDAT または EDIT 関数を使用することで、日付をこのフォーマットに変換することができます。
日付に月数を加算または減算
AYM(indate, months, output)
説明
indate
I4、I4YM、I6、または I6YYM
年月フォーマットのレガシー日付です。日付を含むフィールド名、または日付を返す式を指定することもできます。日付が有効でない場合、この関数は 0 (ゼロ) を返します。
months
整数
日付に加算、または日付から減算する月数です。月を減算するには、負の値を使用します。
output
I4YM または I6YYM
結果のレガシー日付です。結果を格納するフィールド名、または出力フォーマットです。フォーマットは一重引用符 (') で囲みます。
ヒント:入力日付が整数年月日フォーマット (I6YMD または I8YYMD) の場合、日付を 100 で除算することにより、年月フォーマットに変換し、結果を整数に設定します。これにより日付の日の部分が削除されます。日は、小数部分で表されます。
日付に月数を追加
COMPUTE コマンドは、HIRE_DATE の日付を年月日から年月フォーマットに変換し、結果を HIRE_MONTH に格納します。AYM は、HIRE_MONTH に 6 か月加算し、結果を AFTER6MONTHS に格納します。
TABLE FILE EMPLOYEE PRINT HIRE_DATE AND COMPUTE HIRE_MONTH/I4YM = HIRE_DATE/100 ; AFTER6MONTHS/I4YM = AYM(HIRE_MONTH, 6, AFTER6MONTHS); BY LAST_NAME BY FIRST_NAME WHERE DEPARTMENT EQ 'MIS'; END
出力結果は次のとおりです。
LAST_NAME FIRST_NAME HIRE_DATE HIRE_MONTH AFTER6MONTHS --------- ---------- --------- ---------- ------------ BLACKWOOD ROSEMARIE 82/04/01 82/04 82/10 CROSS BARBARA 81/11/02 81/11 82/05 GREENSPAN MARY 82/04/01 82/04 82/10 JONES DIANE 82/05/01 82/05 82/11 MCCOY JOHN 81/07/01 81/07 82/01 SMITH MARY 81/07/01 81/07 82/01