COBOL 中 怎样用多重循环读取,比如每读取A一条数据 就读B中5条数据 再判断A里面的ID在B里面是否能找到

2024-12-19 21:44:24
推荐回答(1个)
回答1:

这个确实没好办法啊,按逻辑来的话,读一条A数据,就需要读全B的所有数据一条一条对比,如果找到就设个值给FLG来判断是否找到。然后再读下一条A的数据。如果B的数据比较少,我建议你把B文件的所有内容存放在一个数组里。
当然,还有种偷懒的方法,首先要保证A,B都是顺序从小到大来排序的,然后A数据的关键字段与B的进行比较,会有3种情况,A>B时,读B的那条。A=B,那么就是有,继续读A的那条,如果A例:
A:
1
2
3

B:
2
3
5

1<2,继续读A,
2=2,继续读A
3>2,继续读B
以下类推

懂了吗