我是OLAP的新手,我有一个非常棘手的任务,我不确定在MDX中是否可行:
我在一家保险公司工作,我被要求提供保留率计算,以比较我们从一个时间段到另一个时间段保留的政策数量。
我们的事实表中的数据包含每个策略的月末快照,并且有一个标志,指示它们当时是否处于活动状态。
因此,用简单的英语,从2014年12月到2015年12月找到保留率的步骤是:
我只是不确定是否可以比较两个不同集合中的特定ID,如MDX中的那些。
非常感谢任何帮助!!
答案 0 :(得分:1)
这不是通常使用MDX的东西,因为它涉及详细级别的条件(PolicyID),而MDX都是关于聚合的数据。
但是,如果您愿意并且能够在事实表/视图中添加标记,则可以完成。要解决您的确切问题,您只需在事实表中添加一个位(或int)标志即可。对于每条记录,如果PolicyID现在处于活动状态且一年前处于活动状态,则该标志为真(1),如果不是,则为false(0)。
然后,您可以向多维数据集添加一个新的度量值,该度量值计为“保留的策略”,这只是您刚刚添加的标志的总和,然后您可以轻松地将一个度量除以另一个度量。
如果您的需求比这个实例更复杂,可能有办法添加更复杂的数据,但重点是您必须为您的多维数据集创建一种方法来比较聚合。