質問: 在庫テーブル.数量 + 追加テーブル.数量 上記のようなsqlを教えてもらったので実行したら問題なくできました。 ただし、どのようなプロセスで結果が得られたのかわかりません。 どうぞ、ご教授お願いいたします。
回答: 下記のようなselect文を作成して結果を見てください。 select 在庫テーブル.id, 在庫テーブル.数量 as 在庫数量, 追加テーブル.数量 as 追加数量 from 在庫テーブル inner join 追加テーブル on 在庫テーブル.id = 追加テーブル.id 出力結果 id 在庫数量 追加数量 001 1 3 001 1 4 002 2 1 002 2 2 これをupdate文にしたものが質問のsqlですが、これを実行すると、 上記のレコードセットを上から順に 在庫テーブル.数量 = 在庫テーブル.数量 + 追加テーブル.数量 という演算を実行してきます。 1行目を実行すると、idが001の在庫テーブル.数量は 1+3 = 4 となります。 2行目を実行するとき、idが001の在庫テーブル.数量はすでに4になってますので、在庫テーブル.数量 = 4+3 = 8 となります。 3行目を実行すると、idが002の在庫テーブル.数量は 2+1=3 となります。 2行目を実行するとき、idが002の在庫テーブル.数量はすでに2になってますので、在庫テーブル.数量 = 3+2 = 5 となります。 という具合に順に、在庫テーブル.数量 に 追加テーブル.数量 を加算していきますので、集計結果を得ることになります。