zoukankan      html  css  js  c++  java
  • 【BIEE】06_UNION /UNION ALL集合中分类汇总求和占比字段特殊处理

    环境准备

    基于【BIEE】04..中建立的事实表

    通过UNION ALL后得到如下报表:

    image

    优秀员工薪水公式:CASE WHEN "EMP_FACT"."级别"='A'  THEN "EMP_FACT"."薪水" ELSE 0 END

    非优秀员工薪水公式:CASE WHEN "EMP_FACT"."级别"='A'  THEN 0 ELSE "EMP_FACT"."薪水" END

    优秀占比:(CASE WHEN "EMP_FACT"."级别"='A'  THEN "EMP_FACT"."薪水" ELSE 0 END)/sum("EMP_FACT"."薪水")

    问题分析

    出现上述问题的原因是:资料库的【薪水】字段已经是sum

    image

    解决这个问题只需要使用原值(不经过聚合的值)即可

    image

    公式修改

    image

    image

    image

    修改后结果:

    image

    然后点击image进入分析编辑状态

    image

    新增行合计

    image

    合计后结果如下:

    image

    从图中我们可以看出,合计后的结果是不正确的,直接就是2.78,这种占比在合计结果这应该是=35000/(35000+1700)的,正确值应该是:0.95

    此时,我们就可以想到,在占比列使用【服务器复杂聚合】即可实现效果

    image

    点击后,发现得不到预期的效果,最后发现:当使用union all或者union时候,无法使用该聚合方式

    最终解决该问题的方案是:去掉union 使用【数据透视表属性】中的【包含仅有空值的行/列】

    image

  • 相关阅读:
    No module named yum错误的解决办法
    Linux下redis的安装
    Linux crontab命令的使用方法
    mysql时间查看以及定时器相关操作
    python zookeeeper 学习和操作
    使用 python 操作 redis
    Linux命令(2)- mv
    mysql 命令行参数
    框架设计
    MediatR使用
  • 原文地址:https://www.cnblogs.com/OliverQin/p/8333821.html
Copyright © 2011-2022 走看看