展开子表
如下图的两张表:
@startuml
' hide the spot
hide circle
entity "tb_team" {
*id : number <<generated>>
--
*name : text
}
entity "tb_members" {
*id : number <<generated>>
--
*team_id : number <<FK>>
*name : text
}
tb_team --|{ tb_members
@enduml
例如希望得到如下入表后的结果
tb_team
id | name |
---|---|
1 | marvel |
tb_members
id | team_id | member_name |
---|---|---|
1 | 1 | Iron Man |
2 | 1 | Spider Man |
数据包需要按如下结构组装:
{
"id": 1,
"name": "marvel",
"members": [
{
"id": 1,
"member_name": "Iron Man"
},
{
"id": 2,
"member_name": "Spider Man"
}
],
"sync_condition": {
"data_type": "teams",
"operation":"upsert",
}
}
配置文件中,名为teams的data_type定义如下:
catalogues:
- data_type:
- teams: ['tb_team', "tb_numbers"]
table_explode:
tb_members:
explode_field: "members"
attach_fields":
id: "team_id"