在SQL Server中一次更新多个行

时间:2018-04-24 11:04:25

标签: sql-server sql-server-2008

我有一个包含以下模式的表A:

|ID|   |NAME|
-------------
1        A
2        B

我有另一个表B,其中包含以下架构

|ID|   |STATUS|
---------------
1        4
2        5

我需要将状态列更新为表B中的7,其ID与表A中的ID相对应。

Update Table B Set status = 7 where tableB.ID = tableA.id

如何将其转换为等效的sql查询?

2 个答案:

答案 0 :(得分:3)

就个人而言,我会这样做:

UPDATE B
SET status = 7
FROM TableB B
     JOIN TableA A ON B.ID = A.ID;

答案 1 :(得分:0)

您好,在查看表格后,以下代码将执行您想要的操作。

UPDATE B SET STATUS = 7 WHERE ID IN(从A中选择ID)