私が持っているとしましょうtable1
:
ID1 | COUNT
-----------
1 | 0
2 | 0
とtable2
:
ID2 | COUNT|ID1
-----------------
1 | 1 | 1
2 | 2 | 2
3 | 3 | 1
私の目標は、ID1 でグループ化されたtable1
カウントの合計を取得することです。結果は次のようになります。table2
update
ID1 | COUNT
-----------
1 | 4
2 | 2
私を混乱させるのは
SELECT *
FROM table2 t2 left outer join table1 t1 on t1.id1=t2.id1;
3行を返しますが、
UPDATE table2 t2 left outer join table1 t1 on t1.id1=t2.id1
SET t1.count=t1.count+t2.count;
2行だけを更新し、生成します
ID1 | COUNT
-----------
1 | 1
2 | 2
update
適切なステートメントが何であるかについてのアイデアを持っている人はいますか? PS私は何かをすることができることを知っていますSUM
が、私の場合table1
は よりもはるかに多くのレコードがtable2
あるため、合計は非効率的です。