在同一循环中循环两个光标



我有两个表;在数据转换过程中,表1中的一列与表2中同一列中的数据更新,但其中一个条件被遗漏,该条件更新了多个具有相同值的条目。

Table 1:
col1   col2   col3   col4   col5
abc    def    100    1.0    XYZ
abc    def    101    1.0    XYZ
abc    def    102    1.0    XYZ
bcd    dff    103    1.0    WXY
bcd    dff    104    1.0    WXY
bcd    dff    105    1.0    WXY
Table 2:
col1   col2   col3   col4
abc    def    1.0    XYZ    
abc    def    1.0    YZ1
abc    def    1.0    YZ2
bcd    dff    1.0    WXY
bcd    dff    1.0    WX1
bcd    dff    1.0    WX2

我想将表1中的第5列与表2中的第4列的数据更新。任何帮助都将不胜感激。

预期表1更新后

Updated Table 1
col1   col2   col3   col4   col5
abc    def    100    1.0    XYZ
abc    def    101    1.0    YZ1
abc    def    102    1.0    YZ2
bcd    dff    103    1.0    WXY
bcd    dff    104    1.0    WX1
bcd    dff    105    1.0    WX3
 UPDATE TABLE1 A
SET A.COL5 =(SELECT COL4 FROM TABLE2 B WHERE A.COL1=B.COL1 AND A.COL2=B.COL2 AND A.COL3=B.COL3 AND A.COL4=B.COL4)

我不确定我是否有您的问题,但这似乎是解决方案。

最新更新