Cognos FM建模时如何设置基数Cardinality

      确保基数在模型中正确捕获非常重要,因为基数决定资料查询主题的检测对SQL生成是有影响的,并可用来避免对资料数据重复计数。

四种类型的基数:
0..n – 零记录到记录
1..n – 一个记录到多记录
0..1 – 零记录到一个记录
1..1 – 必须有一个记录

 

        建模事实(资料)表和维度表对应关系如下:

 

 

 

Cognos FM建模时如何设置基数Cardinality_第1张图片

 

*1..1  ---------- 第一个1是表示内外链接的。第二个1表示的是1对1的关系。

*最小基数0 ----- 表明关系是可选的。要求查询在没有匹配项时保留关系的另一方的信息,指定最小基数为0。

 


如图所示,Customer作为Order Fact 的维度,Order Fact作为Customer的资料。


      此时,Customer和Order Fact 关系为1:1,0:N表示Customer可以有0个 Order Fact  ,那么相应的就是 Customer 左联 (left join )Order Fact  

 

      如果对应的关系是 0:1,1:N ,表示Customer至少有一个最多n个Order Fact,而Order Fact可以有0个Customer,相应的就是Order Fact 左联(left join)Customer。


     如果对应的关系是 1:1,1:N ,表示至少都有一个,那么在生成SQL的时候就是两表内联 (inner join)

 

      如果对应的关系是 0:1,0:N ,表示Customer可以没有Order Fact,order Fact 也可以没有Customer,那么就是两表外联(outer join)了。






你可能感兴趣的:(Cognos)