cognos如何制作维表左关联事实表的报表

需求描述:日期维表左关联事实表,当选择某个月的时候,我们需要把那个月每一天的数据展现出来,事实表如没数据就显示空。如下效果图:

最开始我试过使用FM来设计维表和事实表为左关联,但是由于需要2个参数,一个基于维表的月份参数,一个是基于事实表中销售类型作为参数。发现报表始终展现出来的是内连接的效果。现在我们可以巧妙利用工具箱里面的“并集”来实现,如下图:

查询1是事实表的数据,设置如下:

查询2是维表的数据,数据项与查询1的一样,但是查询2里面关于事实数据的数据项,我们统一设置表达式为:“case when 1=0 then 0 end” 并且聚合函数里面要选择:总计

如图:

查询1与查询2并集后到了查询3,最后前端交叉表的数据项直接从查询3里面拖拽过来即可。

原文地址:http://blog.51cto.com/4170193/2169674

时间: 2024-07-30 04:25:33

cognos如何制作维表左关联事实表的报表的相关文章

MySQL 左关联右表条件查询

MySQL的新知识: 之前数据库没学好,不知道LEFT JOIN ON后边可以加条件 首先业务是有个A表,然后会依据A表信息来在B表生成一条对应数据, 操作时候展示A表数据,如果B表已经有对应数据,显示数据,如果没有,则可以新增数据. B表中有保存A表的ID. SELECT a.id AS "a.id", a.CODE AS "a.code", b.id AS "b.id", b.CODE AS "b.code", b.a_i

oracle开发系列(五) 取左表不在右表记录的3种方法-引申到db2

引: 我们在做数据库开发用 pl sql 加工数据时,经常会遇到取a表不在b表中的记录 或者 左表不在右表中的记录 的情况,所以特地对此做个简单的总结,以便以后用到回顾. 解决: 取a表某字段不在b表 我们自然的逻辑会想到用 a not in b ,这是第一种方法 1 not in 如下图 ,数据库为不跑业务的测试数据库,两张表的数据量一样, 用not in 可以找出a表中prd_inst_id不在t表中的记录 如下图,为生产库的表  l 和t表数据量相同,数据量900w左右 2 not exs

事实表和维度表(转载)

维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进行分析,或按区域来分析. 这样的按..分析就构成一个维度.前面的示例就可以有两个维度:类型和区域.另外每个维度还可以有子维度(称为属性),例如类别可以有子类型,产品名等属性. 下面是两个常见的维度表结构: 产品维度表:Prod_id, Product_Name, Category, Color, Size, Price时间维度表:TimeKey, Season, Year, Month, Date 而事实

事实表 和 维度表

维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进行分析,或按区域来分析. 这样的按..分析就构成一个维度.前面的示例就可以有两个维度:类型和区域.另外每个维度还可以有子维度(称为属性),例如类别可以有子类型,产品名等属性. 下面是两个常见的维度表结构: 产品维度表:Prod_id, Product_Name, Category, Color, Size, Price时间维度表:TimeKey, Season, Year, Month, Date 而事实

数据仓库--事实表和维度表

本文主要参考如下几篇文章:http://www.cnblogs.com/47613593/archive/2009/02/20/1394581.htmlhttp://jackwxh.blog.51cto.com/2850597/827968 1.数据仓库与操作型数据库的区别 数据仓库的物理模型与常见的操作型数据库的物理模型有很大不同.最明显的区别是:操作型数据库主要是用来支撑即时操作,对数据库的性能和质量要求都比较高,为了防止"garbage in,garbage out",通常设计操

数据仓库的几类事实表

交易事实表.周期快照事实表和累积快照事实表,事实快照 在数据仓库领域有一个概念叫Transaction fact table,中文一般翻译为“事务事实表”.事务事实表是维度建模的数据仓库中三种基本类型事实表中的一种,另外两种分别是周期快照事实表和累积快照事实表. 事务事实表与周期快照事实表.累积快照事实表使用相同的一致性维度,但是它们在描述业务事实方面是有着非常大的差异的. 事务事实表记录的事务层面的事实,保存的是最原子的数据,也称“原子事实表”.事务事实表中的数据在事务事件发生后产生,数据的粒

交易事实表、周期快照事实表和累积快照事实表

在数据仓库领域有一个概念叫Transaction fact table,中文一般翻译为"事务事实表".事务事实表是维度建模的数据仓库中三种基本类型事实表中的一种,另外两种分别是周期快照事实表和累积快照事实表. 事务事实表与周期快照事实表.累积快照事实表使用相同的一致性维度,但是它们在描述业务事实方面是有着非常大的差异的. 事务事实表记录的事务层面的事实,保存的是最原子的数据,也称"原子事实表".事务事实表中的数据在事务事件发生后产生,数据的粒度通常是每个事务一条记录

BI中事实表,维度表和数据集市,数据仓库的理解

维度表(dimension)存放着一些维度属性,例如时间维度:年月日时:地域维度:省份,城市:年龄维度:老年,中年,青年:职称维度:高,中,低.它定义了可以从哪些角度分析事实表. 事实表(fact)存放着一些业务产生的数据,例如:商品订购产生的订单信息,银行的流水信息,erp系统的办公信息.但它不仅存放着上述事实信息,而且存放在事实信息与维度信息关联的键值,例如订单信息里面有日期字段可以和时间维度关联,可以通过银行中的个税流水与收入维度关联量化各个收入群体,erp流水中的员工号可以同职称维度表关

《数据仓库工具箱》——事实表

事实表分成三种:事务事实表.周期快照事实表.累计快照事实表 事务事实表 官方定义是:发生在某个时间点上的一个事件.比如以订单为例:下单是一个事实.付款是一个事实.退款是一个事实,所有事实的累计就是事务事实表 周期快照事实表 如果需要对某一天或者某个月的数据进行分析,那么可以使用周期快照事实表,比如:以天举例,财务报表一般都是周期快照事实表,它的最细粒度主键就是:日期+订单 累计快照事实表 累计快照表,一般都是订单表,它记录的是某个时间一个订单最终的状态 三种事实表的区别