1. ホーム
  2. sql

[解決済み] SQLの更新クエリで集計機能?

2022-10-31 15:25:24

質問

あるテーブルの値を、別のテーブルの値の合計に設定しようとしています。 以下のような内容です。

UPDATE table1
SET field1 = SUM(table2.field2)
FROM table1
INNER JOIN table2 ON table1.field3 = table2.field3
GROUP BY table1.field3

もちろん、このままではうまくいきません -。 SETSUM をサポートしておらず GROUP BY .

知っているはずなのに、頭が真っ白になります。 何が間違っているのでしょうか?

どうすればいいのでしょうか?

UPDATE t1
SET t1.field1 = t2.field2Sum
FROM table1 t1
INNER JOIN (select field3, sum(field2) as field2Sum
   from table2
  group by field3) as t2
on t2.field3 = t1.field3