私は初心者で、最近、私たちのビジネスの 1 つの領域からシリアル番号を削除するプロジェクトに関与するようになりました (そのため、問題の材料は個別に認識されるアイテムではなく、差別化されていないバルク部品になります)。
このプロジェクトの一環として、パーツごとに保持されているユニットの数量を合計し、この値でテーブルを更新する必要があります。これが私の最初の試みです:
UPDATE TABLE(AVT) a
SET a.qty = (Select part_no, sum(b.qty) from inventory_part_in_stock_tab b
where b.contract = '12505'
group by b.part_no
WHERE a.part_no = b.part_no);
これが完全に間違っていることは理解していますが、うまくいけば、私がやろうとしていることを正確に説明できます. 私は、私が望むものを達成すると思うカーソルベースのプログラムを作成することができましたが、実用的ではありません。
これにより、画面上のリスト形式で正しい答えが生成されますが、ファイルは更新されません!
Select part_no, sum(qty) from inventory_part_in_stock_tab
where contract = '12505'
group by part_no
Oracle 9i を実行していますが、だれか助けてもらえますか?