Visual FoxPro 6 用什么命令完成代码替换

来源:百度知道 编辑:UC知道 时间:2024/06/17 17:09:41
例如:
表1有字段姓名、性别、民族。
表2为性别代码表,有字段代码,名称(1为男,2为女)
表3为民族代码表,有字段,代码,名称(01汉族,02回族,03蒙古族……)

在表1种的性别和民族字段内的数据全部为代码,请问执行什么样的命令能将表1中的代码全部替换程代码表里相应的代码名称。
例如:
表1中有记录1, 张三,1,02
执行什么命令可以让表1种的记录变成张三,男,回族最后达到表中所有记录的代码替换。
问题从新说明:
例如:共四张表
biao1(xm,xbdm,zzmmdm,mzdm)。其中字段xbdm(性别代码)对应的代码表是biao2,字段zzmmdm(政治面貌代码)对应的代码表是biao3,字段xbdm(民族代码)对应的代码表是biao4。记录的样子为:张三,01,02,03;……

biao2(xbdm,xbdm_1,xbmc),记录为1,1,男;2,2,女
biao3(zzmmdm,zzmmdm_1,zzmmmc)记录为01,01,党员;02,02,团员;03,03,群众
biao4(mzdm,mzdm_1,mzmc)记录为01,01,汉族;02,02,回族;03,03,蒙古族

问题:

怎么样写命令可是实现将biao1中的三个代码字段的内容分别替换为biao2,biao3,biao4中的名称字段的汉字内容,
最终结果将表变成:张三,男,团员,蒙古族

select a.姓名,b.名称 as 性别,c.名称 as 民族 from biao1 a inner join biao2 b on a.性别=b.代码 inner join biao3 c on a.民族=c.代码

用FOR..ENDFOR从头到尾将记录过一遍,设立条件,若符合条件的,则更改其值。
例如:将所有民族="回" 的 记录 民族替换为"汉"
sele biao1
x=reccount()
go top
for i= 1 to x
sele biao1
go i
if 民族="回"
replace 民族 with "汉"
endif
endfor