SSAS MDX-聚合有多个成员

时间:2019-02-14 19:58:04

标签: mdx mdx-query

我在下面有MDX查询,结果不是我所期望的。如果我的where子句仅包含1个城市([Geography]。[Iorg]。[City]。[San Francisco]),则我的合计结果对该城市是正确的,但是如果包含2个城市,则我的合计结果适用于整个城市加利福尼亚州,这不是我想要的。我只想返回这两个城市的结果。

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

此子句用于安全性{[Geography]。[State]。[California]},但如果包含1个城市,则结果不理想,但是当包含两个城市时,结果是针对加利福尼亚州

如果我删除了[地理位置]。[国家名称] .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]}
    ) 

1 个答案:

答案 0 :(得分:0)

您应该这样查询

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]}
    )