Skip to main content

This is documentation for Caché & Ensemble. See the InterSystems IRIS version of this content.Opens in a new tab

For information on migrating to InterSystems IRISOpens in a new tab, see Why Migrate to InterSystems IRIS?

数値式

このセクションでは、DeepSee MDX で数値式を作成し、使用する方法について説明します。

詳細

DeepSee MDX では、数値式の形式は以下のいずれかです。

  • 数値リテラル。例えば、37 です。

    このリテラルでは、先頭に小数点を使用できません。そのため、小数値の先頭には 0 を含める必要があります。例えば、0.1 は有効ですが、.1 は無効です。

  • パーセンテージ・リテラル。例えば、10% です。

    数値とパーセント記号の間にスペースを入れてはいけません。

  • 数値メジャーを参照する式 (MEASURES.[%COUNT] など)。

  • 数値を返す MDX 関数を使用する式 (AVG(aged.age, MEASURES.[test score]) など)。

    AVGMAXCOUNT など、MDX 関数の多くが数値を返します。また、IIF 関数も数値を返すことができます。この関数は、条件を評価して、条件に応じて 2 つの値のいずれかを返します。

  • 算術演算子を使用して数値式を組み合わせる式。例えば、MEASURES.[%COUNT] / 100 です。

    DeepSee では、+ (加算)、- (減算)、/ (除算)、および * (乗算) の標準的な算術演算子がサポートされます。また、DeepSee II では、+ (正)、および- (負) の標準単項演算子もサポートされます。

    優先順位を制御する括弧を使用できます。

    式内のいずれかの値が NULL の場合、その式は NULL と評価されます。

    値を 0 で除算すると、DeepSee はその結果を NULL として扱います。

    Tip:

    MDX の関数 IIF は、このような式に利用できます。

  • メンバ式 ([gend].[h1].[gender].[female] など)。

    メンバ式の値は、現在使用されているメジャーによって異なります。既定では、この式の評価結果は、このメンバに属するレコードの数です。これに対し、特定のメジャーが使用されている場合、この式の評価結果は、それらのレコード全体にわたるそのメジャーの集約値です。

  • ディメンジョンの MDX 識別子 ([gend] など)。

    この式の値は、現在使用されているメジャーによって異なります。既定では、この式の評価結果は、キューブ内のレコードの数です。これに対し、特定のメジャーが使用されている場合、この式の評価結果は、キューブ内の全レコードにわたるそのメジャーの集約値です。

  • 数値を含むピボット変数への参照。ピボット変数を参照するには、以下の構文を使用します。

    $VARIABLE.variablename
    

    variablename は論理変数名です。この式は角括弧で囲まないでください。この構文では大文字と小文字は区別されません。ピボット変数名も同様です。

    ピボット変数の定義に関する詳細は、"DeepSee アナライザの使用法" の “ピボット変数の定義と使用” を参照してください。

用途

数値式は、以下の方法で使用できます。

  • 多くの MDX 関数の数値引数として。以下はその例です。

    AVG(diagd.MEMBERS, MEASURES.[%COUNT])
    
  • セットの要素として。

  • 計算メンバ (この場合はメジャー) のディメンジョンとして。

このセクションでは、あまり一般的でない種類の数値式の例を示します。最初の例では、メンバ式に数値が含まれています。

SELECT gend.h1.gender.female ON 0 FROM patients
 
                                    Female
                                        526

次の例は、上記のバリエーションです。

SELECT gend.h1.gender.female+100 ON 0 FROM patients
 
                                Expression
                                        626

前述したように、メンバ式の値は、現在使用されているメジャーによって異なります。

SELECT gend.h1.gender.female ON 0 FROM patients WHERE MEASURES.[avg age]
 
                                    Female
                                      37.23

以下も同様です。

SELECT gend.h1.gender.female+500 ON 0 FROM patients WHERE MEASURES.[avg age]
 
                                Expression
                                     537.23

次の例では、ディメンジョンの数値が示されています。

SELECT allerd ON 0 FROM patients
 
 
                                      1,000

前述したように、このような式の値は、現在使用されているメジャーによって異なります。

SELECT allerd ON 0 FROM patients WHERE MEASURES.[avg allergy count]
 
 
                                       0.99
FeedbackOpens in a new tab