SSAS MDX - 聚合多个成员

SSAS MDX - aggregate with multiple members

我有下面的 MDX 查询,结果不是我所期望的。如果我的 where 子句仅包含 1 个城市 ([Geography].[Iorg].[City].[San Francisco]),那么我的汇总结果对于该城市是正确的,但如果包含 2 个城市,那么我的汇总结果是针对整个城市的加利福尼亚州这不是我想要的。我只想return那两个城市的结果。

    { [Geography].[Iorg].[City].[San Francisco]
    ,[Geography].[Iorg].[City].[San Jose]
}

这个条款是为了安全{[Geography].[State].[California]} 但我不知道当包含 1 个城市时结果很好但是当我包含两个城市时结果是加利福尼亚州。

如果我删除 [Geography].[Country Name].children ON ROWS,则结果是正确的,但我的查询中需要它。任何帮助,将不胜感激。

    SELECT       
    CROSSJOIN  ({       
    [Measures].[Fleet]},    
    {[Time Calculations].[Current Period] })  ON COLUMNS
    ,
    [Geography].[Country Name].children
    ON ROWS    
    FROM [DMI]      
    WHERE 
    (  
    [Date].[Date Hierarchy].[Date].&[2019-02-12T00:00:00] , 
    { [Geography].[Iorg].[City].[San Francisco]
    ,[Geography].[Iorg].[City].[San Jose]
    }
    ,{[Geography].[State].[California]}
    ) 

你应该这样查询

SELECT       
    CROSSJOIN  ({       
    [Measures].[Fleet]},    
    {[Time Calculations].[Current Period] })  ON COLUMNS
    ,
    [Geography].[Country Name].children
    ON ROWS    
    From (select {[Geography].[Iorg].[City].[San Francisco],
[Geography].[Iorg].[City].[San Jose]}on 1 FROM [DMI] 
)     
    WHERE 
    (  
    [Date].[Date Hierarchy].[Date].&[2019-02-12T00:00:00] 
    ,{[Geography].[State].[California]}
    )