DATEORDERオプションは、アナリティック・ワークスペース内の日付のみの値の構成要素の解釈があいまいな場合に使用される、月、日、年の順序を示す3文字を保存するオプションです。解釈があいまいな日付のみの値が入力されたり、TEXT値から日付のみの値への変換が行われる場合は常に、このDATEORDERが自動で参照されます。日付の値については、「日付のみのデータ型」を参照してください。
パラメータ
'MDY'
、'DMY'
、'YMD'
、'YDM'
、'MYD'
、'DYM'
のいずれかのテキスト式。各文字は、それぞれ日付の構成要素を表します。M
は月を、D
は日を、Yは年を表す文字です。デフォルトの日付順序は'MDY'
です。
使用上の注意
あいまいな日付
明確な日付のみの値が入力される場合、または日付として1つの解釈しかあり得ないテキスト値を変換する場合は、DATEORDERオプションの関与なしに処理が行われます。たとえば、03-24-97
では、97
は年としてしか引用できません。残りの値については、24
は月としては引用できないため日と解釈されます。残されたのは03
のみですが、これは月のはずです。しかし、値3-5-97
のように解釈があいまいな場合は、各構成要素の意味を解釈するためにDATEORDERの現行の値が使用されます。
DATEORDERとテキストから日付のみへの変換
日付のみの値が予期される箇所にテキスト値を使用するか、日付のみの変数にテキスト値を保存する際は、テキスト値は「日付のみの入力値」で説明されているスタイルに従っている必要があります。Oracle OLAPでは、テキスト値を日付のみの値に自動で変換します。テキスト値の意味があいまいな場合は、値の解釈にはDATEORDERの現行の設定が使用されます。
テキスト値から日付のみの値への変換に際し、現行のDATEORDER設定を上書きするには、CONVERTファンクションをdate-order引数とともに使用します。
必須の日付構成要素
ある日付値を、MAINTAIN文を使用してDAY、WEEK、MONTH、QUARTERまたはYEARディメンションに、あるいはLIMITコマンドを使用して値セットに、割り当てる必要があるとします。値を日付のみの式またはテキスト・リテラルの形式で指定した場合、Oracle OLAPではDATEORDERオプションを使用して値を解釈します。テキスト・リテラルを指定する際は、日付の有効な入力スタイルを使用できます。ただし、指定する必要があるのは、特定の型のディメンションまたは使用する値セット内の時間間隔を識別するために必要な日付構成要素のみです。たとえば、MONTHディメンションまたはその値セットでは、30jun97
などの完全な日付を指定することもできますが、jun97
または0697
などの必須の構成要素のみを指定することもできます。
DWMQYディメンションのフェーズ
DATEORDERオプションは、DAY、WEEK、MONTH、QUARTERおよびYEARディメンションに対するDEFINE DIMENSION文へのphase引数の解釈に使用されます。
例
例5-15 日付の順序の変更
次の文では、ある値を定義して日付のみの変数に割り当て、日付の書式と順序を指定して、結果を現行の出力ファイルへ送信します。
DEFINE datevar VARIABLE DATE dATEFORMAT = '<MTXT> <D>, <YYYY>' DATEORDER = 'MDY' DATEVAR = '3 5 1997' SHOW DATEVAR
これらの文によって生成される出力は次のとおりです。
MAR 5, 1997
次の文では、日付の順序を変更し、それにより、日付のみの変数の同じ値の解釈方法も変更されます。
DATEORDER = 'DMY' SHOW DATEVAR
これらの文によって生成される出力は次のとおりです。
MAY 3, 1997