一个事实表,有两个日期维度d1,d2关联字段。如何查询d1在范围mind1-maxd1,且d2在范围mind2-maxd2的事实记录的条数。
查询了很久,突然看到一个帖子:
http://cotiy.cn/t5638952.html
网友提示说:
with member t1 as sum([measure].[人数],[dimjob].[s1])
member t2 as sum(t1, [dimjob].[s1])
t1就是你想要的主表中同时参加了type为s1何s2的人数。
MEMBER [Measures].[d1范围数目] AS
'sum(
{[Date].[d1].&[mind1]:[Date].[d1].&[maxd1]},
[Measures].[计数]
)'
MEMBER [Measures].[最终数目] AS
'sum(
{[Date].[d2].&[mind2]:[Date].[d2].&[maxd2]},
[Measures].[d1范围数目]
)'
注意:[Measures].[最终数目]中用到的是在时间范围d1得出的[Measures].[d1范围数目]
另外还有一种方式:
一个事实表,有两个维度,一个是日期维度d1,一个是产品地区维度P。我们要查询d1在范围mind1-maxd1,且P维度为“深圳”的记录数目。
MEMBER [Measures].[最终数目] AS
'sum(
{[Date].[d1].&[mind1]:[Date].[d1].&[maxd1]},
([Measures].[计数],[P].&[深圳])
)'