Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
project-collie
project-collie
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 5
    • Issues 5
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • Operations
    • Operations
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Commits
  • Issue Boards
Collapse sidebar
  • granite
  • project-collieproject-collie
  • Wiki
    • Udms
    • Sync_mysql_new
  • table_explode

table_explode · Changes

Page history
explode说明 authored Apr 24, 2020 by 吴一博's avatar 吴一博
Hide whitespace changes
Inline Side-by-side
Showing with 80 additions and 0 deletions
+80 -0
  • udms/sync_mysql_new/table_explode.md udms/sync_mysql_new/table_explode.md +80 -0
  • No files found.
udms/sync_mysql_new/table_explode.md 0 → 100644
View page @ d91a46c0
## 展开子表
如下图的两张表:tb_team及tb_members
```puml
@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|
数据包需要按如下结构组装:
```json
{
"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定义如下:
```yaml
catalogues:
- data_type:
- <teams>: ['tb_team', "tb_numbers"]
table_explode:
<tb_members>:
explode_field: "members"
attach_fields":
<id>: "team_id"
```
\ No newline at end of file
Clone repository
  • README
  • data_pump
    • data_pump
    • filters
    • filters
      • bloom
    • readers
    • readers
      • file
      • kafka
      • mongodb
      • sql
    • writers
    • writers
      • file
  • dev_guide
  • dev_manual
  • Home
  • ops
    • ansible
View All Pages