コンテンツにスキップ

SQLServer 他のテーブルの値でアップデートする(UPDATE)

  • 他のテーブルのカラムをアップデートの値とする
  • アップデートするかどうかの場合分けを行う

Usage

他のテーブルの値を使って、アップデートを行う

UPDATE example_table
SET example_column = other_column
FROM other_table
WHERE example_table.id = other_table.id

値がNULLの場合だけ、他のテーブルの値を使って、アップデートを行う

UPDATE example_table
SET
    -- NULLの場合のみ、他のテーブルの値を使用する
    example_table.example_column = 
    (CASE
        WHEN example_table.example_column IS NULL
        THEN other_table.other_column
        ELSE example_table.example_column
    END)

FROM other_table
WHERE example_table.id = other_table.id

Reference