SQL查询基于另一个数据更新一列

时间:2013-07-25 14:11:46

标签: sql lookup lookup-tables

我需要根据特定ID是否匹配来更新一个表中的表列和来自另一个表的数据。

基本上,我有以下架构:

TABLE帐户 FIELD old_user_id

TABLE用户 FIELD old_user_id FIELD new_user_id

我需要遍历accounts表中的所有old_user_id,并根据users表中的old_user_id字段检查它们,然后获取users表中的new_user_id值并替换accounts表中的old_user_id值。

看起来似乎是一件简单的事情,但由于我的SQL并不令人惊讶,我正在努力解决这个问题。

1 个答案:

答案 0 :(得分:1)

试试这个:

          UPDATE A 
          SET
                 A.old_user_id = U.new_user_id
          FROM Accounts A
          JOIN   Users U
          ON A.old_user_id = U.old_user_id