MDX 格式化结果

MDX formatting results

我是 MDX 查询的新手。我无法更改 MDX 输出的格式。我用 "Adventure Works Internet Sales Model" 做了一个类似的例子。见下文:

WITH 
  MEMBER [Measures].[Calculate YTD] AS 
    Sum
    (
      periodstodate([Date].[Calendar].[Year],[Date].[Calendar].CurrentMember)
     ,[Measures].[Internet Total Sales]
    ) 
SELECT 
  {[Measures].[Internet Total Sales]

   ,[Measures].[Calculate YTD]

  } ON COLUMNS,
  [Date].[Calendar].[Month] ON ROWS

FROM [Adventure Works Internet Sales Model]

WHERE ([Date].[Date].&[2012-01-01T00:00:00]:[Date].[Date].&[2018-01-01T00:00:00])WHERE ([Date].[Date].&[2012-01-01T00:00:00]:[Date].[Date].&[2018-01-01T00:00:00])

结果如下所示:

MDX results

我希望看到“[Date].[Calendar].[Month]”行显示为月末日期(例如 2019 年 3 月 31 日)

欢迎来到 SO!

您可以添加一个额外的列来显示每个月的最后一天:

WITH 
  MEMBER [Measures].[Last Day of Month] AS 
    [Date].[Calendar].CurrentMember.LastChild.MEMBER_CAPTION
  MEMBER [Measures].[Last Day of Month v2] AS 
    TAIL(EXISTING [Date].[Date].[Date].MEMBERS).ITEM(0).ITEM(0).MEMBER_CAPTION
MEMBER [Measures].[Calculate YTD] AS 
    Sum
    (
      periodstodate(
        [Date].[Calendar].[Year],[Date].[Calendar].CurrentMember
      )
     ,[Measures].[Internet Total Sales]
    ) 
SELECT 
  { 
   [Measures].[Last Day of Month]
  , [Measures].[Last Day of Month v2]
   ,[Measures].[Internet Total Sales]
   ,[Measures].[Calculate YTD]
  } ON COLUMNS,
  [Date].[Calendar].[Month] 
  ON ROWS
FROM [Adventure Works Internet Sales Model]
WHERE 
(
 [Date].[Date].&[2012-01-01T00:00:00]:
 [Date].[Date].&[2018-01-01T00:00:00]
);

Output