CONVERT-DATE-TIME
CONVERT-DATE-TIME 関数は、英数字クラス、数字クラス、または日時クラスの項目をとり、日時項目を戻します。
関数タイプは日時です。
戻り値の長さは、引数-2 から引数-4 で指定した日付項目、時刻項目、またはタイム・スタンプ項目の形式で認められている長さによって決まります。
フォーマット >>-FUNCTION CONVERT-DATE-TIME------------------------------> >--(--引数-1--引数-2--+---------------------+--)----------->< '-引数-3--+---------+-' '-引数-4-'
- 引数-1
- リテラル-3 は、下記のものになります。
- 日付、時刻、またはタイム・スタンプの項目
- 英数字クラスの項目
- 非数字リテラル
- 整数値クラスの項目
- 引数-2
- 戻り値のカテゴリーを指定します。
以下のキーワードのいずれか 1 つでなければなりません。
- DATE
- TIME
- TIMESTAMP
引数-1 が日付、時刻、またはタイム・スタンプの項目である場合、CONVERT-DATE-TIME で可能な変換は以下のものだけです。- 日付から日付またはタイム・スタンプへの変換
- 時刻から時刻またはタイム・スタンプへの変換
- タイム・スタンプから日付、時刻、またはタイム・スタンプへの変換
引数-2 が TIMESTAMP の場合、引数-3 は、FORMAT OF 特殊レジスターでのみ指定でき、引数-4 は指定できません。
引数-1 が日時項目である場合は、日時の移動が行われます。
引数-1 が整数値であり、戻される日時項目が引数-3 で指定した日時形式で認められている長さよりも長い場合は、 戻される日時項目に対する右寄せおよび切り捨てが行われます。
引数-1 が整数値以外のものあり、戻される日時項目が引数-3 で指定した日時形式で認められている長さよりも長い場合は、 戻される日時項目に対する左寄せおよび切り捨てが行われます。
- 引数-3
- 日付項目または時刻項目の形式を指定します。以下のものでなければなりません。
- 長さが最小でも 2 文字の非数字リテラル
- キーワード LOCALE
- FORMAT OF 特殊レジスター
引数-3 は引数-2 によって参照されるカテゴリーを表していなければなりません。
引数-3 がキーワード LOCALE である場合は、日付または時刻の形式は LOCALE に基づきます。 引数-4 を指定しないと、現行ロケールが使用されます。 その他の場合は、簡略名または LOCALE OF 特殊レジスターと関連付けられているロケールが使用されます。
引数-3 を指定しないと、戻り値の形式は SPECIAL-NAMES FORMAT 文節に依存します。
SPECIAL-NAMES 段落内に形式が 1 つも定義されていない場合は、*ISO 形式が使用されます。
TIMESTAMP では、引数-3 が指定されていない場合、デフォルトの形式 @Y-%m-%d-%H%M%S.@Sm が使用されます。
- 引数-4
- LOCALE と関連付けられている簡略名または LOCALE OF 特殊レジスターでなければなりません。
引数-4 が従わなければならない規則を以下に示します。
- 引数-4 が指定されており、かつ引数-3 がロケールに基づく形式リテラルである (例えば %p を含んでいる) 場合は、 そのロケールに基づく形式リテラルは引数-4 で指定されているロケールを使用して変換指定子の実際の値を判別する。
- 引数-3 がロケールに基づく形式リテラルであり (例えば %p を含んでいる)、かつ引数-4 が指定されていない場合は、 そのロケールに基づく形式リテラルは現行ロケールを使用して変換指定子の実際の値を判別する。
- 引数-3 がロケールに基づく形式リテラルであり (例えば %p を含んでいる)、 かつ LOCALE OF 特殊レジスターが非ロケール項目を参照するために使用されている場合は、 そのロケールに基づく形式リテラルはデフォルトのロケールを使用して変換指定子の実際の値を判別する。
