以下是引用taifu945在2013-10-19 13:50:45的发言:
我看你在顶楼给出的A表结构中没有“姓名”字段,而在4、5楼,发现你说“A表6万多行记录中的姓名来自多个文件”,不晓得你那A表原来是否有“姓名”字段?我分有和没有两种情况给出9.0版本的代码:
A表没有“姓名”字段: A表有“姓名”字段:
SELECT A.学号,B.姓名,A.成绩 ; UPDATE A SET 姓名=B.姓名 FROM B WHERE A.学号=B.学号
FROM A JOIN B ;
ON A.学号=B.学号 ;
INTO TABLE AA
USE IN A
USE IN AA
ERASE A.DBF
RENAME AA.DBF TO A.DBF
如果你获取“姓名”数据的表文件有多个,可参考如下做法(假设是两个取“姓名”数据的表文件B和C):
A表没有“姓名”字段: A表有“姓名”字段:
SELECT A.学号,B.姓名,A.成绩 ; UPDATE A SET 姓名=T1.姓名 ;
FROM A ; FROM (SELECT * FROM B UNION SELECT * FROM C) T1 ;
JOIN B ON A.学号=B.学号 ; WHERE A.学号=T1.学号
JOIN C ON A.学号=C.学号 ;
INTO TABLE AA
...
...
A表我已经增加姓名字段了,update 前要先索引吗?提示更了N条记录,但都还是空的。怪