从数据维护角度,以下2 语句的数据维护后是完整一致的(即维护表1后的记录不变)
update 表1 set 成绩=b.成绩 from 表2 b where 表1.编码=b.编码
select a.编码,nvl(b.成绩,0) 成绩 from 表1 a left join 表2 b on a.编码=b.编码 into dbf 表3
但如果用以下语句
SELECT A.编码,B.成绩 FROM 表1 A,表2 B WHERE ALLTRIM(A.编码)==ALLTRIM(B.编码)
维护表1后的记录有可能漏丢了(原因可能表2没记录与表1对应)
所以我都是基于数据维护角度考虑的