(ブログは向かない・・・怠惰なオイラ)計算されるメンバー MSDNネタ
思い立った時が、書くとき。。。おいらの基本方針としよう。
SSASは、自動で事前集計データを内部で保持してくれるから、集計検索が高速におこなえる。
RelationalDatabaseは、クエリ発行時に集計操作を行うので、これほど高速にはならない。
でも、スタンダードな使い方ではないケースも出てくるわな。そりゃ。
で今回MSDNに出ていた質問が、「メジャーについて、全体集計が表示されなくしたい」という特異なケース。
【数量は「全組織合計」を出したいけど、金額は「全組織合計」を空欄にしたい】
というご要望でした。(金額・数量ではそんなことはレアなんだけど、例として)
こういう時に使えるのが、「計算されるメンバー」です。
MDXの式を定義しておくことで、出力される値を制御できます。
今回の要望だと
CASE WHEN [«dimension»].[«Hierarchy»].CurrentMember IS [«dimension»].[«Hierarchy»].[All]
THEN Null
ELSE [Measures].[«Target Measure»]
END
てな感じの式で 実現できます。
MDX式は、取り付きにくいし、解説本もレアだというのが難点ですが、
製品のヘルプ(MSのサイト)がよくできているので、挑戦してみる価値はあります。