MDX:我只需要那些突出显示的记录

时间:2016-03-28 12:28:33

标签: ssas mdx

我只需要那些突出显示的记录。

SELECT 
[Measures].[Assessment Patients Detail] ON COLUMNS,
NON EMPTY([DimAssessment].[Assessment Text].&[Employee Wellness HRA],
          [DimAssessment].[Question Text].&[Do you use tobacco products?],
          [DimPatient].[Patient Key].[Patient Key],
          Generate(
              [DimAssessment].[Answer Text].[Answer Text].MEMBERS
             ,[DimAssessment].[Answer Text].CURRENTMEMBER
             *TAIL(
                NonEmpty(
                   [DimDate].[Full Date Alternate Key].[Full Date Alternate Key].MEMBERS
                  ,[DimAssessment].[Answer Text].CURRENTMEMBER
                )
              ,[DimAssessment].[Question Text].&[Do you use tobacco products?]
              )
          )
)ON ROWS
FROM
[Care];

]

1 个答案:

答案 0 :(得分:0)

这可能不是答案,因为我之前曾尝试过帮助,但以下内容有点神秘:

函数json.dumps的第二个参数通常是整数,例如2或3表示您希望Tail的第一个arg中指定的集合中的最后2个或最后3个成员。

我更喜欢对行上的成员使用交叉连接而不是元组,但我认为这不会为您提供所需的行:

Tail

我们需要在生成中移动更多逻辑。

首先尝试以下操作,看看它是否返回两个正确的列?

SELECT 
[Measures].[Assessment Patients Detail] ON COLUMNS,
NON EMPTY
     {[DimAssessment].[Assessment Text].&[Employee Wellness HRA]}
    *{[DimAssessment].[Question Text].&[Do you use tobacco products?]}
    *[DimPatient].[Patient Key].[Patient Key].members
    *Generate(
         [DimAssessment].[Answer Text].[Answer Text].MEMBERS
        ,[DimAssessment].[Answer Text].CURRENTMEMBER
        *TAIL(
           NonEmpty(
              [DimDate].[Full Date Alternate Key].[Full Date Alternate Key].MEMBERS
             ,[DimAssessment].[Answer Text].CURRENTMEMBER
           )
         ,1 //[DimAssessment].[Question Text].&[Do you use tobacco products?]
      )
     )
ON ROWS
FROM
[Care];