小技巧系列4:活用EVALUATE函数(2)

浏览: 1956

环境:BIEE 11.1.1.7...

背景:

最近项目中有这样的需求,按某业务逻辑由1或者N个A转换成1个B,当按某规则统计的时候,若成立,则所有A都成立,若不成立,则N-1个A成立,计算和A的总个数的比率。

指标逻辑复杂度就不说了,按这个逻辑很简单,所有成立的数量除以总数量就可以了。

关键是算成立的。最后逆向思维解决,如果不成立,最多出现不成立的个数为所有的B的个数,用全部的A数量减去不成立的B的数量再除以全部的A的数量即可。

大功告成,试算无误。开始开发相关明细报表,所有A都展示,不成立的某个A打'N'标识,成立的打'Y'。

初一看很简单,该打'N'的打'N',可若不成立,N个A中任意一个打'N',被这个任意难住了。

按B分组后,第1个打'N'即可。逻辑很简单,开始。rcount?max?min?一个个尝试过后嘲笑我的失败。

后来被同事提醒,才想起来遗忘已久的EVALUATE函数,于是EVALUATE_ANALYSIS调用row_number() OVER() 子句完美的解决了该问题。

推荐 0
本文由 百分百 创作,采用 知识共享署名-相同方式共享 3.0 中国大陆许可协议 进行许可。
转载、引用前需联系作者,并署名作者且注明文章出处。
本站文章版权归原作者及原出处所有 。内容为作者个人观点, 并不代表本站赞同其观点和对其真实性负责。本站是一个个人学习交流的平台,并不用于任何商业目的,如果有任何问题,请及时联系我们,我们将根据著作权人的要求,立即更正或者删除有关内容。本站拥有对此声明的最终解释权。

0 个评论

要回复文章请先登录注册