【问题标题】:SSAS count of non zero measure非零测量的 SSAS 计数
【发布时间】:2018-02-15 13:55:36
【问题描述】:

我是 SSAS 多维数据集的新手,需要一些帮助。我有一个从事实表创建的多维数据集,其中一个度量,我们称之为金额,包含零。此度量是作为 SUM 创建的。 现在我也有 SSAS 设计师添加的计数度量。 我需要的是所有非零数量的计数。 我尝试将计算度量添加为

`IIF([Measures].[amount] > 0,[Measures].[RowCount],null)` 

也试过
FILTER([Measures].[RowCount],[Measures].[Amount] > 0) 这两个都返回计数,包括数量=0。 我正在通过 SSMS sql 查询对其进行验证 SELECT count(*) FROM [dbo].[Fact_Session] where SiteKey = 5 and DateKey = 20170201 and Amount >0
任何帮助表示赞赏。我的假设是 IIF/Filter 语句将在 cubing 之前对各个行进行操作,因为一旦聚合到一个维度中,由于聚合,数量不会为 0。请帮忙。

【问题讨论】:

    标签: ssas mdx


    【解决方案1】:

    要计算非零,您可以使用这种方法:

    WITH 
    MEMBER [Measures].[IsNotEmpty] AS
      IIf(
       Not(IsEmpty([Measures].[Amount]))
       ,1
       ,Null
      )
    

    但最好在特定集合的 SUM 中执行此操作 - 因此以下计算有多少子类别不为空:

    WITH 
    MEMBER [Measures].[SubCategory_IsNotEmpty] AS
      SUM(
        [Product].[Product Categories].[SubCategory].members
       ,IIf(
          Not(IsEmpty([Measures].[Amount]))
          ,1
          ,Null
        )
      )
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-23
      • 2021-07-17
      相关资源
      最近更新 更多