主题:字段、字符替换
绝缘子2009
[专家分:50] 发布于 2009-06-24 21:01:00
如何根据下表的xx字段和yy字段生成zz字段的内容,或者用zz字段内容替换xx字段
其中xx字段和yy字段都是不定的,每次可能都不一样
Xx Yy Zz
1/12 3 1~3/12
2/12 2 4~5/12
3/12 1 6/12
4/12 2 7~8/12
5/12 3 9~11/12
6/12 1 12/12
回复列表 (共9个回复)
沙发
琅拿度 [专家分:2820] 发布于 2009-06-24 23:54:00
你在搞脑筋急转弯吧?
板凳
绝缘子2009 [专家分:50] 发布于 2009-06-25 20:56:00
为什么,没人能搞懂上面表的规律呢?
这个论坛效率真低 啊 ~~
3 楼
琅拿度 [专家分:2820] 发布于 2009-06-25 22:12:00
for i=1 to recc()
go i
sum to q yy for recn()<=i
repl zz with iif(yy=1,str(q)-right(alltrim(xx),len(alltrim(xx))-at('/',alltrim(xx))),str(q-yy+1)-'~'-str(q)-right(alltrim(xx),len(alltrim(xx)-at('/',alltrim(xx))))
endfor
括号太多,我没检查过。
4 楼
琅拿度 [专家分:2820] 发布于 2009-06-25 22:19:00
顺序错了,应为:
sum to q yy for recn()<=i
go i
5 楼
琅拿度 [专家分:2820] 发布于 2009-06-25 22:22:00
哎现在的后生崽素质
6 楼
琅拿度 [专家分:2820] 发布于 2009-06-25 23:15:00
哎呀,忘了+1
7 楼
sywzs [专家分:5650] 发布于 2009-06-26 04:52:00
GO TOP
I=1
DO WHILE !EOF()
j=i+yy-1
REPLACE zz WITH ALLTRIM(STR(i))+iif(yy>1,"~"+ALLTRIM(STR(j)),"")+SUBSTR(xx,AT("/",xx))
SKIP
i=j+1
ENDDO
8 楼
琅拿度 [专家分:2820] 发布于 2009-06-26 09:31:00
学习了
9 楼
oufeiwen [专家分:910] 发布于 2009-06-27 12:45:00
use abc &&设表名为abc
scan
n001=iif(recn()=1,0,n001)+yy
repl zz with allt(str(n001-yy+1))+iif(yy=1,'','~'+allt(str(n001)))+substr(xx,at('/',xx))
endscan
我来回复