怎么A,B两表重复ID自动换号并合并?
有A,B两个表DBF,如下:
A
----------
1001,23
1002,25
1003,26
1008,35
B
---------------
1002,27
1003,33
1004,35
怎么能让B表中的数据合并到A表中,并且B表中的1002自动+1换成1003(1002+1),如果A表中的1003(1002+1)也存在,则再+1(1004),一直循环,直到找到一个B表不存在ID(1004),B表的1002改成1004合并到A表中
B表其他其他以此类推,一直到EOF
谁能给个算法?
[解决办法]
*假设 T1 为你的 表A ,T2 为你的 表BCreate Cursor T1 (fl1 I,fl2 I)Create Cursor T2 (fl1 I,fl2 I)Insert Into T1 Values (1001,23)Insert Into T1 Values (1002,25)Insert Into T1 Values (1003,26)Insert Into T1 Values (1008,35)Insert Into T2 Values (1002,27)Insert Into T2 Values (1003,33)Insert Into T2 Values (1004,35)*以上生成测试数据Select T2Scan m.lnZd1=fl1 m.lnZd2=fl2 Select T1 Do While .T. Locate For fl1=m.lnZd1 If Found() m.lnZd1=m.lnZd1+1 Loop Else Exit Endif Enddo Insert Into T1 (fl1,fl2) Values (m.lnZd1,m.lnZd2)EndscanSelect T1Browse &&看一下后插入的3条记录吧