当前位置: 代码迷 >> Sql Server >> sql 怎样交换两个表里的内容,该如何解决
  详细解决方案

sql 怎样交换两个表里的内容,该如何解决

热度:97   发布时间:2016-04-27 13:31:38.0
sql 怎样交换两个表里的内容
如题:
表A和表B

A:
a01 a02
---------
1 haha
2 gaga
3 jiji

B:
b01 b02
--------
1 cc
2 dd


想得到这个结果:
A:
a01 a02
--------
1 cc
2 dd
3 jiji

我想把A表里的a02字段换成B表里的b02字段,条件是A表中的a01和B表中的b01相等,不相等的则不替换.

------解决方案--------------------

SQL code
update t1 set t1.a02=t2.b02 from a t1,b t2 where t1.a01=t2.b02
------解决方案--------------------
探讨
SQL code

update t1 set t1.a02=t2.b02 from a t1,b t2 where t1.a01=t2.b02

------解决方案--------------------
C# code
DROP TABLE ADROP TABLE BCREATE TABLE A(  a01  INT,  a02  VARCHAR(10)  )INSERT INTO A    SELECT 1,'haha'    UNION ALLSELECT 2,'gaga'   UNION ALLSELECT 3,'jiji' CREATE TABLE B (  b01  INT,  b02  VARCHAR(10)  )INSERT INTO B    SELECT 1,'cc'    UNION ALLSELECT 2,'dd'SELECT * FROM A SELECT * FROM B UPDATE A SET A.a02=B.b02 FROM A,B WHERE B.b01=A.a01SELECT * FROM A/*a01         a02        ----------- ---------- 1           cc2           dd3           jiji(所影响的行数为 3 行)*/
  相关解决方案