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

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

四种类型的基数:
0..n – 零记录到记录
1..n – 一个记录到多记录
0..1 – 零记录到一个记录
1..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)了。






  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值