vf 字段截取

  • 格式:doc
  • 大小:36.00 KB
  • 文档页数:1

xh xm xb csny csn csy csr
20050220020001 张帅女19880301 一九八八三一
20050220020002 张晓女19890712一九八九七十二
20050220020003 陈阳女 19890504
20050220020004 赵晓晓女19870517
20050220020005 牛晓慧女19881114
20050220020006 尹彦波男19860129
20050220020007 梁建霞女 19870115
20050220020008 回文娇女19880506
20050220020009 孙春晖女 19880530
如何把CSNY中的8位数字先截取出年并转换为大写格式并存入字段csn内, csny内的5-6截取出存入csy, csny内的7-8截取出存入csr.其中csny的格式为字符型。

表名为05春.dbf.
问题1.是在命令在命令窗口下直接操作吗?怎么来实现呢?各位大侠请帮帮我吧!!
2.如果是在程序下请各位大侠帮我写出完整的语句。

谢谢!!!!!
set century on
cDX="0一二三四五六七八九"
cY=str(year(csny),4)
cy1=substr(cY,1,1)
cy2=substr(cY,2,1)
cy3=substr(cY,3,1)
cy4=substr(cY,4,1)
cY=subs(cDX,val(cy1)*2+1,2)+subs(cDX,val(cy2)*2+1,2)+subs(cDX,val(cy3)*2+1,2)+subs(cDX,val(cy4)*2+1,2) replace csn with cy
月份和日的转换同理, 自己试试!
哈哈,Foxbase基本上淘汰了,su bstr(“ABCDEFG”,2,3)一看就明白了
ABCDEFG --String
0123456 --Index
123 --Number
第二个参数2是指从Index 2开始截取,就是C
第三个参数3是指截取3个字符,那就是CDE咯。

repl all csny with subs(csny,1,4)+subs(csny,6,2)+subs(csny,9,2)。