求助!!Cognos-querystudio中实现动态统计前n名的金额汇总。
0
具体需求:
用户拖时间,拖前n名金额,即为时间前n名的金额汇总;
拖科目,拖前n名金额,即为科目前n名汇总;
拖时间,科目 ,拖前n名金额,即为时间科目前n名汇总。
还请各位大侠不吝赐教!!!!多谢了!!!!!
用户拖时间,拖前n名金额,即为时间前n名的金额汇总;
拖科目,拖前n名金额,即为科目前n名汇总;
拖时间,科目 ,拖前n名金额,即为时间科目前n名汇总。
还请各位大侠不吝赐教!!!!多谢了!!!!!
没有找到相关结果
重要提示:提问者不能发表回复,可以通过评论与回答者沟通,沟通后可以通过编辑功能完善问题描述,以便后续其他人能够更容易理解问题.
2 个回复
曾力 - 深处互联网四大坑当中~ 2013-12-15 回答
赞同来自: 梁勇 、刚刚好
排多少名,可以用dense_rank() over (paration by 维度字段来处理 order by 排序字段)来处理。
累计 ,可以用 sum() over (paration by 维度字段来处理 order by 排序字段) 来处理.
虽然cognos的部分函数可以解决这个问题,但是,有两点你的这种情况无法满足。
1.用到复杂函数必须用到rs
2.采用复杂函数,cognos生成的sql也会相对复杂,影响查询效率。
因此,模型当中sql处理,是一种比较灵活高效的处理方式。
jf_emal 2013-12-16 回答
赞同来自:
我的实现方式类似 sum(case when row_number() over(paration by 维度字段 order by 排序字段) <= N then 金额 else 0 end )
关键这个维度字段 用哪个,维度字段的个数,都不是固定的。这就 不行了。。。。。
另,
你说:"1.用到复杂函数必须用到rs“ 不懂,什么意思?