6列のテーブルがあり、6列目は空ですが、他の5列にはデータがあります。4 番目と 5 番目の列を使用して値を計算し、この値を 6 番目の列に挿入したいと考えています。
これは私がこれまでに持っているものです:
UPDATE Table_Name
SET Change = tab3.Difference
FROM
(SELECT COBDate, FileName, ID, ScenarioID FROM Table_Name WHERE COBDate = '2012-05-18' AND FileName = 'GBP.csv') tab0
INNER JOIN
(SELECT tab1.ID, tab1.ScenarioID,tab1.COBDate, tab1.FileName, Val1 - Val2 AS Difference FROM
(SELECT COBDate, FileName, ScenarioID, ID, CASE WHEN Value IS NULL THEN 0 ELSE Value END AS Val1 FROM Table_Name WHERE COBDate = '2012-05-18' AND FileName = 'GBP.csv') tab1
JOIN
(SELECT COBDate, FileName, ScenarioID, ID, CASE WHEN Value IS NULL THEN 0 ELSE Value END AS Val2 FROM Table_Name WHERE COBDate = '2012-05-17' AND FileName = 'GBP.csv') tab2
ON tab1.ScenarioID = tab2.ScenarioID AND tab1.ID = tab2.ID) tab3
ON tab0.COBDate = tab3.COBDate
AND tab0.FileName = tab3.FileName
AND tab0.ID = tab3.ID
AND tab0.ScenarioID = tab3.ScenarioID
編集: 上記のコードは機能していません。主キーに関係なく、すべての行に同じ値が設定されています....