怎么将B的多个字段的值更新到A的字段中
10 个解决方案
#1
表A和表B有很多个共同的字段,有一个共同的ID
怎么能把表B的数据更新到表A
怎么能把表B的数据更新到表A
#2
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
#3
+1
根据实际情况考虑增加exists条件
或使用merge
#4
来个merge:
merge into A using B on (A.ID=B.ID)
when matched then
update set A.C1=B.C1,A.C2=B.C2....
#5
update (select a.C1, a.C2, b.c1, b.c2 from a join b using (id))
set a.c1 = b.c1, a.c2 = b.c2;
set a.c1 = b.c1, a.c2 = b.c2;
#6
+1,exists条件是必要的。
#7
分不多,还望海涵~
#8
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
简单明了,厉害!崇拜
#9
匹配不上的记录不是更新为NULL了
#10
楼上只说了字段共同的情况,如果表A和表B 字段不一致能如何处理?
怎么能把表B的数据更新到表A
怎么能把表B的数据更新到表A
#1
表A和表B有很多个共同的字段,有一个共同的ID
怎么能把表B的数据更新到表A
怎么能把表B的数据更新到表A
#2
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
#3
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
+1
根据实际情况考虑增加exists条件
或使用merge
#4
来个merge:
merge into A using B on (A.ID=B.ID)
when matched then
update set A.C1=B.C1,A.C2=B.C2....
#5
update (select a.C1, a.C2, b.c1, b.c2 from a join b using (id))
set a.c1 = b.c1, a.c2 = b.c2;
set a.c1 = b.c1, a.c2 = b.c2;
#6
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
+1
根据实际情况考虑增加exists条件
或使用merge
+1,exists条件是必要的。
#7
分不多,还望海涵~
#8
update A
SET (C1,C2,C3,C4)=(SELECT C1,C2,C3,C4 FROM B WHERE ID=A.ID)
简单明了,厉害!崇拜
#9
匹配不上的记录不是更新为NULL了
#10
楼上只说了字段共同的情况,如果表A和表B 字段不一致能如何处理?
怎么能把表B的数据更新到表A
怎么能把表B的数据更新到表A