SQL Serverで、複数のテーブルを跨いでフィールドを更新する方法は何ですか?

SQL Serverでフィールドを更新する際には、内部結合サブクエリ、セルフジョイン、またはMERGEステートメントを使用することができます。

方法1:インラインサブクエリを使用します。

UPDATE 表1
SET 字段 = (SELECT 字段 FROM 表2 WHERE 条件)
WHERE 条件;

Option:
方法2:セルフリンクを使用します。

UPDATE 表1
SET 字段 = 表2.字段
FROM 表1
INNER JOIN 表2 ON 表1.条件 = 表2.条件;

方法3: MERGE文を使用する。

MERGE INTO 表1
USING 表2
ON 条件
WHEN MATCHED THEN
    UPDATE SET 表1.字段 = 表2.字段;

上記の3つの方法すべてにおいて、クロステーブル更新の正確性を確保するために、適切な条件を設定する必要があります。

bannerAds