下のメンバーのフィルターを使用して、上のレベルで集計する必要があります。特定の月をフィルターして、毎年の売上を表示するレポート用です。これはレベルのある FoodMart データベースと Product Dimension の例です。
- 【製品群】
- 【商品部】
MDX:
WITH
MEMBER [Measures].[Unit Sales Calculated] AS
Aggregate(
Intersect(
Descendants(
[Product].CurrentMember,
[Product].[Product Department],
SELF
),
[Filtered Product Department]
),
[Measures].[Unit Sales]
)
SET [Filtered Product Department] AS
Except(
[Product].[Product Department].Members,
[Product].[Drink].[Alcoholic Beverages]
)
SELECT
NON EMPTY [Measures].[Unit Sales Calculated] ON COLUMNS,
NON EMPTY [Product].[Product Family].Members) ON ROWS
FROM [Sales]
このソリューションは機能しますが、パフォーマンスはやや劣ります。このクエリを記述するより良い方法はありますか?