如何根据OLAP多维数据集中的度量计算count distinct

时间:2014-08-11 21:00:51

标签: ssas mdx olap

我试图为计算成员编写MDX查询"每日活跃用户"在我的SSAS OLAP多维数据集中,基于事实表中名为" IsDailyActive'

的事实表中的属性

我有一个称为"活跃用户"它使用来自" Fact Activity"的COUNT DISTINCT聚合; UserId列上的表。我希望重复使用该度量,并通过分析过滤器“每日活动”来计算不同的用户数量。在我的查询中为True。

我试过这个,但它给了我

WITH 
SET MySet AS
   {[Measures].[Active Users]} 
MEMBER [Measures].[Daily Active Users] AS
   DISTINCTCOUNT(MySet)
SELECT
{[Measures].[Daily Active Users]} ON COLUMNS
FROM MyDataCube


WITH 
SET MySet AS
   {[Measures].[Active Users]} 
MEMBER [Measures].[Daily Active Users] AS 
   DISTINCTCOUNT(MySet)
SELECT
{[Measures].[Daily Active Users]} ON COLUMNS
FROM MyDataCube
WHERE
([Is Daily Active].[Boolean].&[True])

我做错了什么?

注意:" FactActivity"中的IsDailyActive列;表的类型为" bit"所以它在行中有0或1个值。

1 个答案:

答案 0 :(得分:1)

如果多维数据集脚本中已存在度量Active Users,那么为什么以下内容不起作用?

SELECT
{[Measures].[Active Users]} ON COLUMNS
FROM MyDataCube
WHERE
([Is Daily Active].[Boolean].&[True])