如何选择/模拟任何给定时期SSAS中的最后一个客户状态



我正在尝试在SSAS中对以下情况进行建模。我有三个维度:
客户
id
1
2

状态
id名称
1状态_1
2状态_2

日期
day_date
2012-01-01
2012-01-02

还有FactCustomerStatues表
customer_id,status_id,day_date
1 1 2012-01-01
12 2012-03-01
11 2012-05-01

有了这个,我构建了一个简单的立方体,用这些维度和计数度量。现在,我想要一份报告,它将显示我在任何给定日期的客户数量,以及该日期任何客户的最新状态。例如,我确实在2012-02-01进行了报告,我有(给定的例子)1个客户处于状态_1,0个客户处于状况_2。当我在2012-04-01做报告时,我有0个状态为1的客户和1个状态为2的客户。然后这个客户再次迁移到status_1,依此类推。如何使用数据模型或MDX来完成任务?我可以为每个客户构建一个具有最新状态的快照,但它只会给我客户数据库的当前状态。但我想把它与昨天的状态,或者一个月前或任何时候的情况进行比较。有人能提供一些线索吗?谢谢你的帮助!

根据下方的评论修改答案

试试这个Oleksandr

WITH  MEMBER Measures.CountCustomer AS DistinctCount([Customer].[Customer].Children)
SELECT  NON EMPTY {   Measures.CountCustomer } ON COLUMNS ,
[Status].[Status].Children ON ROWS
FROM 
( 
SELECT null:[status Date].[Status Day Date].&[2012-03-01T00:00:00] ON COLUMNS
FROM TestStatus
) 

最新更新