IBM Cognos FM Determinants

Determinants(决定因素)是IBM Cognos BI提供的一项功能,典型情况下是当对数据进行聚合运算时提供对数据组的粒度进行控制,从而达到排除重复的记录.

用途举例:

         表T_A                                表T_B

key   col_A   col_C                 key     col_A     col_B

1        1       one                    101       1           7

2        1       two                    102       1           8

3        1       three                  103       1           9

现在需要根据col_A对col_B进行聚合:

本地sql语句如下:

select A.col_A,sum(B.col_B) from T_A A,T_B B where A.col_A=B.col_A group by A.col; 以上语句将会进行重复计算;

具体如下: 我们希望得到的数据是

col_A      col_B

  1            24

而以上语句会是这样(笛卡尔积):

T_A.col_A   T_B.col_B

      1             7

      1             8

      1             9

1             7

1             8

1             9

1             7

1             8

1             9

结果是: col_A        col_B

                1           24*3

通过决定因素的设置这里主要对col_A,即先对col_A进行分组,具体语句可能如下:

with T_C as(select min(T_A.col_A)from T_A)

select C.col_A,sum(B.col_B) from T_C C,T_B B where C.col_A=B.col_A group by C.col;

转载于:https://www.cnblogs.com/jane-eyre/p/3894968.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值