我想根据另一个表字段更新一个字段。表格是这样的:
TABLE A
SID SMONTH STID VID VVID
1 201312 s10 v5 ?
2 201312 s10 v5 ?
1 201312 s11 v7 ?
2 201401 s11 v7 ?
1 201312 s1 v9 ?
2 201401 s1 v9 ?
1 201312 s1 v60 ?
1 201312 s1 v71 ?
在上表 A 中,我需要使用下表 B 中的 VVID 更新 VVID 列。
TABLE B
VVID STID VID WEIGHT
v1 s10 v5 0.5
v2 s10 v5 7.5
v1 s11 v7 1.5
v2 s11 v7 6.5
v1 s1 v9 5
v2 s1 v9 5
v1 s1 v60 5
v1 s1 v71 5
在上表 B 中,VVID 是根据 STID、VID 和 WEIGHT 三个字段生成的。但在表 A 中,我没有 WEIGHT 字段。因此,如果我使用下面的代码,我会收到“单行查询返回多行”错误。
UPDATE A
SET VVID = (SELECT distinct VVID
FROM B
WHERE B.STID = A.STID and B.VID = A.VID )
请给我建议。
谢谢萨蒂什