Mdx 如何计算一段时间内的销售天数/无销售天数

Mdx 如何计算一段时间内的销售天数/无销售天数,mdx,Mdx,如何计算一段时间内的销售天数/无销售天数 我在下面定义了一个MDX查询: SELECT { [Measures].[Sales], [Measures].[Amount] } ON COLUMNS NONEMPTY({ [Dim Customer].[Customer ID].[Customer ID].ALLMEMBERS * [Time].[Month].CHILDREN }) DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_U

如何计算一段时间内的销售天数/无销售天数

我在下面定义了一个MDX查询:

SELECT { [Measures].[Sales], [Measures].[Amount] } ON COLUMNS
NONEMPTY({ [Dim Customer].[Customer ID].[Customer ID].ALLMEMBERS * 
           [Time].[Month].CHILDREN
}) DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME ON ROWS
FROM [MyCube]
结果显示了每个客户和月份对应月份的销售额和金额

CustomID / Month / Sales / Amount:
1 / 2013 01 / 123 / 2234:
1 / 2013 02 / 2 / 95:
1 / 2013 03 / 212 / 11111:
2 / 2013 01 / 122 / 2121:
2 / 2013 02 / 231 / 3333:
现在我需要一个计数器/列,显示当月没有销售额的天数值

CustomID / Month / Sales / Amount / DaysNoSale:
1 / 2013 01 / 123 / 2234 / 3:
1 / 2013 02 / 2 / 95 / 26:
1 / 2013 03 / 212 / 11111 / 0:
2 / 2013 01 / 122 / 2121 / 0:
2 / 2013 02 / 231 / 3333 / 0:
在cube中,我们有每天的详细信息,因此可以显示每天的销售额。 在没有销售的日子里,这个数字是0

有谁知道我如何解决这个问题。

感谢转发

假设您的Day属性名为
[Time].[Day]
,您将使用:

WITH Member Measures.[Days No Sale] AS
     Filter([Time].[Day].[Day].Members * { [Time].[Month].CurrentMember },
            ([Measures].[Sales], [Dim Customer].[Customer ID].CurrentMember) = 0
           ).Count
SELECT { [Measures].[Sales], [Measures].[Amount], Measures.[Days No Sale] }
       ON COLUMNS,
       NONEMPTY({ [Dim Customer].[Customer ID].[Customer ID].ALLMEMBERS * 
                [Time].[Month].CHILDREN
               })
       DIMENSION PROPERTIES MEMBER_CAPTION, MEMBER_UNIQUE_NAME
       ON ROWS
  FROM [MyCube]
[Time].[Day].[Day].Members*{[Time].[Month].CurrentMember}
是多维数据集中所有天数与行的当前月份的叉积。由于AnalysisServices的Autoexists特性,它只返回非空元组,即。E一个月中每天一个元组,如e。G时间维度表中没有记录,日期列中包含2014年9月10日,月份列中包含2013年7月。即。维度内的叉积在Analysis Services中不是真正的叉积

然后,
Filter
方法将这些限制为当前客户id没有销售的客户,最后,
Count
只对这些客户进行计数