仓库内产品按类别和编号整理,但编号有间断,如何查找同类产品起止编号并生成为一条记录?
原数据希望处理结果
产品类别产品编号产品类别起始编号结束编号
A 1A13
A 2A56
B 1B12
C 1B57
D 5C1
D 7C35
E 1D5
A 3D78
B 2E12
B 5E5
C 3E7
E 2
A 5
E 5
D 8
C 4
A 6
B 6
E 7
B 7
[解决办法]
*表结构如下:
*CREATE TABLE 原数据 (类别 c(1),编号 n(2))
*CREATE TABLE 原数据 (类别 c(1),起始 n(2),结束 n(2))
SET SAFETY OFFCLOSE DATABASESUSE 原数据 IN 0 ALIAS 原数据USE 目的表 IN 0 ALIAS 目的表SELECT 目的表zapSELECT 原数据INDEX on 类别+CHRTRAN(STR(编号,2),' ','0') TO 原数据GO toplb=类别bh1=编号bh2=编号DO WHILE !EOF() skip IF lb==类别 IF 编号-bh2=1 bh2=编号 ELSE SELECT 目的表 APPEND blank REPLACE 类别 WITH lb,起始 WITH bh1,结束 WITH bh2 SELECT 原数据 bh1=编号 bh2=编号 ENDIF ELSE SELECT 目的表 APPEND blank REPLACE 类别 WITH lb,起始 WITH bh1,结束 WITH bh2 SELECT 原数据 lb=类别 bh1=编号 bh2=编号 ENDIFENDDOSELECT 目的表REPLACE 结束 WITH 0 FOR 起始=结束SET SAFETY ONBROWSE