SQLで1つの更新を行うだけで同じようにするにはどうすればよいですか?SQLのさまざまな条件に対して1つの更新を行う値をほとんど設定しない方法
UPDATE TableItem
SET SomeValueN = t1.somevalue
FROM TableItem t
INNER JOIN TableItem2 t2 ON some keys
LEFT JOIN TableItem1 t1 ON some keys AND t1.[Month] = month(t2.DateOfCreation)
WHERE t.ItemID = $(some id)
UPDATE TableItem
SET SomeValueN1 = t1.somevalue
FROM TableItem t
INNER JOIN TableItem2 t2 ON some keys
LEFT JOIN TableItem1 t1 ON some keys AND t1.[Month] = month(t2.DateOfCreation) + 1
WHERE t.ItemID = $(some id)
UPDATE TableItem
SET SomeValueN2 = t1.somevalue
FROM TableItem t
INNER JOIN TableItem2 t2 ON some keys
LEFT JOIN TableItem1 t1 ON some keys AND t1.[Month] = month(t2.DateOfCreation) + 2
WHERE t.ItemID = $(some id)
ご覧のとおり、私は異なる列の値を別の列に更新したいと思っています。 (英語のため申し訳ありません)
画像はあなたを助けることを願っています:
質問のTableItem、TableItem1、TableItem2の3つのテーブルのテーブル構造を投稿してください。列を更新する条件の簡単な説明を追加します。 –
@a_horse_with_no_name私はMicrosoft SQLを使用しています –