プロが教える店舗&オフィスのセキュリティ対策術

番号1ごと金額の合計をグループ化して更新をしたいのですが、
select文で表示することは出来るのですが、追加ができません。

(where 区分が0の区分と1の区分を求める)

「数値項目」に更新するためにはどうすればいいのか
----------------------------------------------
ちなみに累計も求めたいのですがどうしたらよろしいですか?

求めたい累計は 番号1ごとに(区分0 - 区分1)の結果の累計
累計も同様に番号1ごとにグループ化


これを実行するとサブクエリがと出る
update W_i
set 数値 = (
select 番号1,sum(金額) from T_i
where 区分 = '0'
group by 番号1

A 回答 (2件)

ひとまず、私の解釈による仕様と


うろ覚えのSQLでの回答です。

[仕様]
T_i テーブルに格納されているデータを
番号1カラムのグループ毎に小計を求め
W_i テーブルの内容を更新する。

[SQL文]
なんとなくこんな感じ。

update W_i
set 数値 = (
select sum(金額) from T_i
where 区分 = '0'
group by 番号1
)
where (区分 = '0') and
番号1 = (
select 番号1 from T_i
where 区分 = '0'
group by 番号1
);


丸々上書きされてしまうなら
Insert 文の方が楽な気もしますが…。
    • good
    • 0

>追加ができません。


Insert?
正直、この文面ではやりたいことが良くわかりません。

番号,数値
---------
1, 2
2, 3

番号,数値
---------
1, 0
2, 0
見たいな感じでやりたいことをデータの形で表現した方が伝わると思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す


このQ&Aを見た人がよく見るQ&A