CALENDAR

目的

カレンダ・ファンクションは、DATE式、または暗黙的にDATEに変換される任意の式を入力として受け入れます。各ファンクションに対してデフォルトの書式が明示的に定義された日付を表す書式付き文字列を戻します。

セマンティクス

カレンダ、会計および小売の各ファンクションは、特定のレベルの暗黙的階層内のメンバーを一意に識別するVARCHAR2値を戻します。このため、NLS_DATE_FORMATNLS_TIMESTAMP_FORMATおよびNLS_TIMESTAMP_TZ_FORMATはこれらのファンクションには適用されません。それぞれに独自のデフォルト書式があります。これらのファンクションは、NLS_DATE_LANGUAGEの設定を尊重します。

  • dtexprは、DATETIMESTAMPTIMESTAMP WITH TIME ZONETIMESTAMP WITH LOCAL TIME ZONEのいずれかの型(または暗黙的にDATEに変換できる任意の値)を持つ日時式です。

  • fmtは、書式文字列を表すテキスト式です。すべての場合で、書式指定子の大文字と小文字の区別は、TO_CHARと同じ動作に従います。たとえば、MONは省略形式の月を大文字で指定し(例: JAN)、monは省略形式の月名を小文字で指定し(例: jan)、Monは省略形式の月名を先頭大文字(例: Jan)で指定します。

  • nlsparamは、NLSパラメータ設定を表すテキスト式です。現在サポートされているパラメータはNLS_DATE_LANGUAGEのみで、TO_CHARおよびTO_DATEと同じ方法で指定されます。

カレンダ・ファンクションの書式

カレンダ・ファンクションは、標準のグレゴリオ暦内の指定されたレベルのメンバーを一意に識別するVARCHAR2値を戻します。必要な書式は書式文字列のどこかに指定する必要があり、存在しない場合はエラーが発生します。オプションの書式は、書式文字列で指定できます。他のすべての書式指定子は禁止されており、含まれる場合はエラーが発生します。

句読点および引用符付きテキスト(二重引用符を使用)は、TO_CHARと同じ方法で許可されます。書式指定子は、TO_CHARに使用される日時書式指定子のサブセットです。

次の表に、各ファンクションの書式文字列を示します。

表7-1 カレンダ・ファンクションの書式

ファンクション 必要な書式 オプションの書式 デフォルト書式文字列

CALENDAR_YEAR

YYYYまたはSYYYY

なし

SYYYY

例: 2024

CALENDAR_QUARTER

YYYYまたはSYYYY

Q

なし

"Q"Q-SYYYY

例: Q1-2024

CALENDAR_MONTH

YYYYまたはSYYYY

MM、mon、MONTHのいずれか

Q

MON-SYYYY

例: JAN-2024

CALENDAR_WEEK

YYYYまたはSYYYY

WW

なし

"W"WW-SYYYY

例: W01-2024

CALENDAR_DAY

YYYYまたはSYYYY

  • WWおよび次のいずれか:
    • DY
    • DAY
  • DDおよび次のいずれか
    • MM
    • MON
    • MONTH
  • DDD

Q

DD-MON-SYYYY

例: 01-JAN-2024

カレンダ・ファンクションの書式の説明

次の表では、カレンダ階層の書式指定子の解釈について説明します。これは、TO_CHARおよびTO_DATEの定義と一致しますが、完全性のためにここに含めています。MONMONTHDYおよびDAYの大文字化ルールはすべて、小文字(month => juneなど)、大文字(MONTH => JUNEなど)および先頭大文字(Month => Juneなど)に関して他の場所(TO_CHARなど)での使用方法に従います。

表7-2 カレンダ・ファンクションの書式の説明

書式指定子 説明

YYYY

4桁の年(正の年のみサポート)

SYYYY

4桁の年、BC年は負数

Q

年の四半期(1から4)

MM

年の月(1から12)、2桁

MON

月の名前の省略形

MONTH

月の名前

WW

週番号(1から53)、2桁

DY

曜日の省略形

DAY

曜日

D

日番号(1から7)。NLS_TERRITORYによって異なります

DD

日付(1から31)、2桁

DDD

年における日付(1から366)、3桁