加入并更新相同的列sql server

Join and update same column sql server

本问题已经有最佳答案,请猛点这里访问。

我有两张桌子:

表A:

1
2
3
ID VALUE
1  A
2  B

表B:

1
2
3
   Rank VALUE
    12   A
    13   B

我需要将值列上的两个表联接起来,并用表A的ID列更新表B的值列。因此,结果表B将是:

1
2
3
Rank VALUE
12   1
13   2

我正在使用SQL Server 2008


updatejoin配合使用:

1
2
3
4
UPDATE b
SET b.value = a.id
FROM tableb b
  JOIN tablea a ON b.value = a.value
  • SQL小提琴演示

在SQL Server中,可以使用update中的join来执行此操作。在这种情况下,具体的语法是:

1
2
3
4
5
UPDATE b
    SET VALUE = a.id
    FROM tableb b JOIN
         tablea a
         ON b.value = a.value;