PROPERTIES (MDX)
指定されたメンバに対して、指定されたプロパティの値を返します。
返りタイプ
この関数は、文字列を返します。
構文および詳細
member_expression.PROPERTIES(property_name,default_value))
以下は、この指定の説明です。
-
member_expression は、メンバを返す式です。
この式は、メジャーを参照できません。
-
property_name は、プロパティの名前と等しい文字列です。
すべてのメンバには、特定の内部プロパティがあります。これは、"内部プロパティ" にリストされています。キューブ定義には、追加のプロパティの定義を含めることができます。
-
default_value は、メンバにこのプロパティの値がない場合に返されるオプションの値です。この引数を省略するか、指定されたメンバにプロパティがない場合、この関数は @NOPROPERTY を返します。
この引数は、インターシステムズによる MDX への拡張機能です。
プロパティの名前は、大文字と小文字が区別されません。
例
以下の例は、内部プロパティである KEY プロパティの値を取得します。
SELECT docd.h1.CURRENTMEMBER.PROPERTIES("KEY") ON 0, docd.[doctor].MEMBERS ON 1 FROM patients
Doctor
1 None <null>
2 Adam, Dan 41
3 Adam, Danielle 391
...
以下のバリエーションは、%LABEL を使用して、わかりやすいキャプションを指定しています。
SELECT %LABEL(docd.h1.CURRENTMEMBER.PROPERTIES("key"),"key") ON 0,
docd.doctor.MEMBERS ON 1 FROM patients
key
1 None <null>
2 Adam, Dan 41
3 Adam, Danielle 391
...
以下の例は、CURRENTMEMBER を使用して、郵便番号を繰り返し、ID と LEVEL_NUMBER という 2 つの内部プロパティの値を取得します。
WITH SET test AS '{homed.h1.CURRENTMEMBER.PROPERTIES("id"),
homed.h1.CURRENTMEMBER.PROPERTIES("level_number")}'
SELECT test ON 0, homed.zip.MEMBERS ON 1 FROM patients
Home ZIP Home ZIP
1 32006 2 1
2 32007 4 1
3 34577 1 1
4 36711 5 1
5 38928 3 1
バリエーションとして、以下のクエリは、%LABEL を使用して、わかりやすいキャプションを指定しています。
WITH SET test AS '{%LABEL(homed.h1.CURRENTMEMBER.PROPERTIES("id"),"id"),
%LABEL(homed.h1.CURRENTMEMBER.PROPERTIES("level_number"),"level_number")}'
SELECT test ON 0, homed.zip.MEMBERS ON 1 FROM patients
id level_number
1 32006 2 1
2 32007 4 1
3 34577 1 1
4 36711 5 1
5 38928 3 1
その他の例は、"CURRENTMEMBER" を参照してください。