GREGDT - ユリウス暦から太陽暦フォーマットに変換
GREGDT 関数は、日付をユリウス暦フォーマット (年日) から太陽暦フォーマット (年月日) に変換します。
ユリウス暦フォーマットの日付は、5 桁または 7 桁の数値です。先頭の 2 桁または 4 桁は年、末尾の 3 桁は 1 月 1 日から数えた日数です。たとえば、ユリウス暦フォーマットの 1999 年 1 月 1 日は 99001 または 1999001であり、2004 年 6 月 21 日は 2004173 です。
GREGDT のフォーマットオプション
GREGDT 関数は、ユリウス暦の日付を YMD または YYMD フォーマットに変換します。必要に応じて、DEFCENT および YRTHRESH パラメータ設定を使用して世紀を決定します。GREGDT 関数は、日付を次のように返します。
- フォーマットが I6 または I7 の場合、GREGDT は YMD フォーマットで日付を返します。
- フォーマットが I8 以上の場合、GREGDT は YYMD フォーマットで日付を返します。
ユリウス暦から太陽暦フォーマットに変換
GREGDT(indate, output)
説明
indate
I5 または I7
ユリウス暦の日付です。変換前に日付の末尾が切り捨てられて整数になります。切り捨て後の値が 5 桁または 7 桁の数値になる必要があります。日付が有効でない場合、この関数は 0 (ゼロ) を返します。
output
I6、I8、I6YMD、I8YYMD
結果を格納するフィールド名、または出力フォーマットです。フォーマットは一重引用符 (') で囲みます。
ユリウス暦から太陽暦フォーマットに変換
GREGDT 関数は、JULIAN フィールドを YYMD (太陽暦) フォーマットに変換します。世紀は、デフォルトの DEFCENT および YRTHRESH パラメータ設定により決定されます。
TABLE FILE EMPLOYEE PRINT HIRE_DATE AND COMPUTE JULIAN/I5 = JULDAT(HIRE_DATE, JULIAN); AND COMPUTE GREG_DATE/I8 = GREGDT(JULIAN, 'I8'); BY LAST_NAME BY FIRST_NAME WHERE DEPARTMENT EQ 'PRODUCTION'; END
出力結果は次のとおりです。
LAST_NAME FIRST_NAME HIRE_DATE JULIAN GREG_DATE --------- ---------- --------- ------ --------- BANNING JOHN 82/08/01 82213 19820801 IRVING JOAN 82/01/04 82004 19820104 MCKNIGHT ROGER 82/02/02 82033 19820202 ROMANS ANTHONY 82/07/01 82182 19820701 SMITH RICHARD 82/01/04 82004 19820104 STEVENS ALFRED 80/06/02 80154 19800602