2013-07-23 5 views
2

MDX 쿼리 중 하나에 문제가 있습니다. Where 절의 Range에서 날짜 선택기를 사용하면 쉼표를 구분 기호로 사용하면 6 초가 걸립니다. 쉼표를 구분 기호로 사용하면 약 1 초가 걸립니다.MDX 성능과 관련된 쿼리

where 절에 범위를 지정하여 쿼리를 수정하고 성능을 향상시킬 수있는 방법이 있습니까? 친절하게도 귀하의 의견을 알려주십시오. 콤마 세퍼레이터

예 1

WITH MEMBER Measures.X AS SUM({[User].[column].CURRENTMEMBER},[Measures].[# User Count]) 
    SELECT NON EMPTY 
    UNION({[User].[column].[ALL]}, 
    Generate(Hierarchize([User].[Column].[ALL]) 
    AS [XL_Filter_Set_0], TopCount(Except(DrilldownLevel([XL_Filter_Set_0].Current 
    AS [XL_Filter_HelperSet_0],,0,INCLUDE_CALC_MEMBERS), [XL_Filter_HelperSet_0]) 
    , 5, [Measures].[# User Count])) 
    )DIMENSION PROPERTIES PARENT_UNIQUE_NAME,HIERARCHY_UNIQUE_NAME ON ROWS , Measures.X ON COLUMNS 
    FROM [Activity] where 
    ({[Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2012],[Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2013], 
    [Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2014]}, 
    {[Activity Type].[Activity Hierarchy].[All]}) 

예 2 콤마로 분리하지 않고 있지만 그 범위를

WITH MEMBER Measures.X AS SUM({[User].[column].CURRENTMEMBER},[Measures].[# User Count]) 
    SELECT NON EMPTY 
     UNION({[User].[column].[ALL]}, 
     Generate(Hierarchize([User].[Column].[ALL]) 
      AS [XL_Filter_Set_0], TopCount(Except(DrilldownLevel([XL_Filter_Set_0].Current 
      AS [XL_Filter_HelperSet_0],,0,INCLUDE_CALC_MEMBERS), [XL_Filter_HelperSet_0]) 
      , 5, [Measures].[# User Count])) 
      )DIMENSION PROPERTIES PARENT_UNIQUE_NAME,HIERARCHY_UNIQUE_NAME ON ROWS , Measures.X ON COLUMNS 
      FROM [Activity] where 
    ({[Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2012]:[Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2014]}, 
    {[Activity Type].[Activity Hierarchy].[All]}) 

감사 낸 대신 WHERE 시도에서 사용 범위의 사용

답변

1

준 범위는 FROM

from (
select ([Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2012]:[Date].[Fiscal Hierarchy].[Fiscal Year Name].&[2014]) on Columns From [Activity])