IGNORECONSTANTS
Formulaの計算後に、#Missing値をオペランドとして使用する場合に#Missingのままにするかどうかを制御します。
構文
IGNORECONSTANTS TRUE [BOTTOMUP] | FALSE-
TRUE-Defaultオプション。#Missing値は、式定数との相互作用に関係なく欠落したままです。
-
BOTTOMUP-TRUEの後に使用すると、式キャッシュの入力データ・セットが比較的小さい場合に、このパラメータによって問合せの実行がボトムアップ・モードでも迅速に解決されます。
-
FALSE- #Missing値は、式定数との相互作用によって変更できます。
説明
#Missingデータ値が定数または他のデータ非依存の構造を持つ式で処理される場合、デフォルトの動作では、#Missingはデータ値のように処理されません。 たとえば、Aがない場合、A+5は#Missingを返します。
IGNORECONSTANTSをFALSEに設定すると、#Missingはデータ値として扱われます。 たとえば、Aがない場合、A+5は5を返します。
式の実行を高速化するためにアプリケーションのキューブをハイブリッド・モードに最適化するには、この構成を次のように使用できます:
IGNORECONSTANTS TRUE BOTTOMUP次の両方に該当する場合は、ハイブリッド・モードのパフォーマンス・チューニングに前述の使用方法をお薦めします:
- 問合せパフォーマンスの問題が発生した場合
- 式は複雑で、多数のディメンション間演算子またはIF/ELSE文が含まれています
複雑な式を使用すると、(比較的小さい入力データ・セットを持つ)疎の間に式キャッシュが大きくなる可能性があります。 IGNORECONSTANTS TRUE BOTTOMUPを使用すると、式キャッシュが疎な場合に依存性分析をより効率的に解決するために、問合せの実行が強制的にボトムアップ・モードで行われます。
例
構成が次のとおりであるとします:
IGNORECONSTANTS TRUE次の式のXの結果は#Missingになります
IF(X)
5;
ELSE
3
ENDIF