1、描述编辑
关联视图 在线视频学习 请查看【数据关联】
通常数据库的表与表之间存在关联关系,比如外键,即某个字段是一个表的主键,但该字段同样是另一张表的外键,那么FineBI怎么读取这种表间关联关系呢?在添加数据表中我们介绍过,将数据库表添加到业务包的过程中,系统会自动读取表间关联。本章我们将介绍另一种方法:手动建立表间关联关系。
FineBI版本 | jar包版本 |
---|---|
5.1 | 2019.1.7 |
2、添加表间关联编辑
打开FineBI数据决策系统,进入数据准备>业务包,单击业务包配置页面已添加成功的表可以看到单表的关联视图选项。
在关联视图设置区域,可直接单击添加关联按钮,为该表进行关联设置。如下图:
进入关联设置界面,需要选择被关联的表及关联字段,添加关联方向。关联方向即表示哪个表作为主表,关联方向包含三种:1:1、1:N、N:1,1表示主表,N表示子表。1:1表示两张表都为主表,即两张表中的每条记录都相互对应,需要根据实际情况谨慎选择。不能违反实际数据对应的关联关系,如实际主表不会因为手动设置为子表而变为子表。
此处,我们为“医药_库存周转事实表”选择客户编码字段关联,选择“客户地区维度表”的客户编码字段添加关联,选择关联方向为N:1,即“医药_客户地区维度”作为主表,如下图:
添加完成后点击确认保存,即可在该数据表的关联关系区域看到已经添加成功的关联,如下图:
单击已创建的关联上方的添加关联,按照上面同样的方式同样添加关联到其他表/字段即可。
配置完字段关联后,若未开启实时数据,需要点击更新信息>更新设置进行该表的更新操作,抽取数据保存到本地才能使用。表更新详细设置可参考数据更新。
注:若存在多人配置相同字段关联的情况,后保存的将覆盖之前保存的关联配置。且同一张表的字段A不能出现多张主表,也即上面库存事实表的客户编码字段只能配置一个主表字段,如上面的客户维度表客户编码字段,不能再为该字段配置N:1关系的其他字段,否则后面配置的将覆盖之前配置的关联。
有的时候客户系统中通过一个主键无法确定一条记录,比如订单表里有很多字段,一般情况只要有个订单号bill_no做主键就可以了,但是,现在要求可能会有补充订单,使用相同的订单号,这时单独使用订单号就不可以了,因为会有重复。那么可以再使用个订单序列号bill_seq来作为区别,把bill_no和bill_seq设成联合主键。
若需设置联合主键,则在关联设置界面单击添加联合关联字段,并选择需要的字段添加关联。如下图,单击+添加联合关联字段以后,会多出一栏设置关联字段,同上述一样选择联合关联的字段即可。
若添加的联合关联字段需要删除,如下图,在关联设置中点击删除即可。
3、修改表间关联编辑
对于已经添加好的关联关系,我们可以点击编辑按钮进行修改,如下图:
可以重新进行关联字段和关联方向的选择。
4、删除表间关联编辑
对于之前创建的不需要的表间关联,我们可以进行表间关联关系的删除,如下图,点击删除按钮进行删除。