SELECT文を使用して複数の行を更新する 質問する

SELECT文を使用して複数の行を更新する 質問する

次のテーブルと値があります:

Table1
------------------------
ID | Value
------------------------
2 | asdf
4 | fdsa
5 | aaaa


Table2
------------------------
ID | Value
------------------------
2 | bbbb
4 | bbbb
5 | bbbb

Table1 の値とそれぞれの ID を使用して、Table2 のすべての値を更新したいと思います。

簡単な SQL クエリでそれを実行する方法はありますか?

ベストアンサー1

選択を実行して、それが希望どおりであることを確認します

SELECT t1.value AS NEWVALUEFROMTABLE1,t2.value AS OLDVALUETABLE2,*
FROM Table2 t2
INNER JOIN Table1 t1 on t1.ID = t2.ID

アップデート

UPDATE Table2
SET Value = t1.Value
FROM Table2 t2
INNER JOIN Table1 t1 on t1.ID = t2.ID

また、必要に応じてロールバックできるように を使用することを検討してください。ただし、満足したらBEGIN TRAN必ずロールバックしてください。COMMIT

おすすめ記事