2011-04-01 89 views
1

My多维数据集有一个事实表,其中包含每个对任何实体所做修改的行。我需要的是一种度量,它将根据选定的维度返回实体的数量。 因此,如果用户从日期维度中选择一个月,则该度量应该返回当月修改的实体数量(而不是修改次数)。MDX等效于SQL的GROUP BY,用于排除重复行

在SQL这将是这样的:

SELECT EntityID, COUNT(*) 
FROM FactTable 
WHERE Date BETWEEN X AND Y 
GROUP BY EntityID 

你怎么能在MDX做到这一点?当然,这对于立方体来说是非常普遍的情况。

回答

3

你的T-SQL查询是等效的MDX查询:

select 
    [Measures].[<Fact rows count measure>] on columns, 
    <Entity dimension members> on rows 
from [<Cube Name>] 
where (<month member>) 

在上面的查询[事实行计数测量]将与聚合式度量计数 - 行 计数但是,如果您需要按另一个维度返回实体成员的重复计数,当你切,你基本上有以下几种选择:

  1. 在ENTITYID关键
  2. 创建calcula创建重复计数度量值泰德度量与表达:计数(。存在(现有[实体] [实体] [实体] .MEMBERS ,, '测量组名称'))

HTH, 赫尔沃耶Piasevoli