Files
2026-07-12 14:54:50 +08:00

1.9 KiB
Raw Permalink Blame History

マッチング(1:N) 数据生成规则

概要

2个输入文件,R01为主驱动,R02为从侧。1件R01可对应多件R02(1:N)。

输入

  • 输入文件:2个(R01主驱动、R02从侧)
  • 前提条件:双方按key升序排序
  • 核心逻辑:EVALUATE TRUE 3分岐(R01key<R02key / = / >

生成的数据组

用途 R01记录数 R02记录数 说明
1 1:1匹配 3 3 全部1:1匹配,中间R01-only和R02-only
2 1:N匹配 3 5 R01有1:N匹配(同key多条R02)
3 R02-先结束 3 2 R01先结束,第一条数据的R01key<第一条的r02数据
4 R02-only 2 4 R02先结束,第一条数据的R01key>第一条的r02数据

组11:1匹配

R01: a001→a002→a003 R02: a001→a002→a003

records按处理顺序:

record序号 内容 说明
1 R01(a001)+R02(a001) 匹配
2 R01(a002)+R02(a002) 匹配
3 R01(a003)+R02(a003) 匹配

组1:需要注意当key为n个项目组合而成时,在R01的最后需要加上n条数据。 和R02(a003)的所有key相比,只有当前第n个key与R02(a003)的key不一致。保证key的比较没有问题。

组21:N匹配

R01: a001→a002→a003 R02: a001→a002→a002→a002→a003 (同key有3条)

records按处理顺序:

record序号 内容 说明
1 R01(a001)+R02(a001) 匹配(第1件)
2 R01(a002)+R02(a002) 匹配(第1件)
3 R01(a002)+R02(a002) 匹配(第2件)
4 R01(a002)+R02(a002) 匹配(第3件)
5 R01(a003)+R02(a003) 匹配

组3R02-先结束

R01: a001→a002→a003 R02: a002→a002

records:全部R01-only

组4R01-先结束

R01: a002→a003 R02: a001→a002→a003→a004

recordsR01(a001)→R02(b001~b004)→R01(a002)

输出

每组一个json文件:{プログラムID}_g{groupId}.json