Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 使用其他列更新表的列_Sql_Sql Server 2005 - Fatal编程技术网

Sql 使用其他列更新表的列

Sql 使用其他列更新表的列,sql,sql-server-2005,Sql,Sql Server 2005,我有一张桌子 col1 col2 ------------- 1 a 2 hhhh 3 erer 4 sdfsdfds 5 alimd 表a与其他表有关系 另一个表名为B col1 col2 ---------------- 1 hhjgjh 2 jkkjerwe 3 jjjjj 表A、B有数百万条记录 问题:我想用表B的col2更新表A的col2

我有一张桌子

col1    col2
-------------
1         a
2         hhhh
3         erer
4         sdfsdfds
5          alimd
表a与其他表有关系

另一个表名为B

col1     col2
----------------
1        hhjgjh
2         jkkjerwe
3          jjjjj
表A、B有数百万条记录

问题:我想用表B的col2更新表A的col2

用于更新的最佳查询和查询速度

谢谢

此查询将起作用:

update TableA
set col2 = b.col2
from TableA a
inner join TableB b on b.col1 = a.col1

update TableA
set col2 = b.col2
from TableA a
inner join TableB b on b.col1 = a.col1
UPDATE a SET a.col2 = b.col2 FROM a left join b on a.col1 = b.col1
update TabA
set col2 = b.col2
from TabB B
where b.col1 = a.col1
UPDATE A SET A.col2 = B.col2
FROM TableA A INNER JOIN TableB B ON A.col1 = B.col1