如何一步到位将级联数据融合到自关联表?

概述

在本篇中,将接续上一篇使用GoldData已抓取的省市县这样的级联数据融合到数据库自关联应用表中,也就是将area级联数据集融合到自关联表area中,我们先看级联数据集字段和数据,以及area表结构,如下图所示:

如何一步到位将级联数据融合到自关联表?

如何一步到位将级联数据融合到自关联表?

这每一条记录与一条父记录存在关联,通常将数据导入这样的表,是个有挑战性的问题,在这里我们将看到如何在GoldData中轻松做到这一点。

创建融合映射

打开融合管理,选择数据集为"area",选择数据表"area",然后添加和编辑映射,将打开融合映射子页面,如下图所示:

如何一步到位将级联数据融合到自关联表?

我们将关联数据方式设为"不关联,数据追加"即可,然后选择保存。接下来我们需要配制字段映射。我们对各字段编辑如下:

area表字段 映射方式 映射area数据集内容 说明
id 编号,自增长字段,不用映射
name 数据集字段 name 名称
code 数据集字段 code 编码
abbr 数据集字段 abbr 简写
pid 数据表 <见数据表映射脚本> 父编号

数据表映射脚本如下图所示:

{
table:area
col:code
by:parent_code
get:id
display:name
afterJs:'''
var ret={};
if(searchByField && searchByField.code==entity.code){

}else{
 ret={calcValue:calcValue,calcValueDisplay:calcValueDisplay}
}
ret
'''
}


这样我们的数据融合映射的配制已经完成了。接下来我们需要先启动GoldData融合作业中的手动融合,查看一下融合是否可进行。

开始数据融合

我们回到融合管理,选择融合作业,打开子页面后,再点击手动作业,进入手动融合作业子页面,如下图所示:

如何一步到位将级联数据融合到自关联表?

如何一步到位将级联数据融合到自关联表?

回到数据库中也发现了数据记录。如下图所示:

如何一步到位将级联数据融合到自关联表?

我们确认数据融合没问题,那么我们就可以回到融合作业,点击开始融合,则会进入到程序自动状态。这将很容易将3千多条数据导入到数据库表当中。

结尾

通过本篇GoldData对级联数据融合到自关联表的了解,你将会发现这项功能非常有用。因为很多现实世界中数据是这样的级联数据,也就是树状结构,比如分类数据、层级数据之类。