TOTALCOSTを合計するトリガーをCUSTOMER_IDに基づいて作成したいと考えています。 MAIN_ORDER表にデータを挿入します。GROUP BYを使用してSQLでトリガーを作成する方法は? (Oracleデータベース)
TABLE:ORDER_DETAIL
ID | CUSTOMER_ID | TOTALCOST
------------------------
1 | 1000 | 50
2 | 1000 | 50
3 | 2000 | 200
4 | 2000 | 200
TABLE:MAIN_ORDER
CUSTOMER_ID | ORDER_PRICE
------------------------
1000 | 100
2000 | 400
が、私はこれを試してみましたが、私はよく理解している場合、それは、あなたのトリガーを脇に保つ
CREATE OR REPLACE TRIGGER MOVEDETAIL
BEFORE INSERT ON MAIN_ORDER FOR EACH ROW
BEGIN
SELECT ORDER_DETAIL.CUSTOMER_ID,ORDER_DETAIL.SUM(TOTALCOST)
INTO :NEW.CUSTOMER_ID,:NEW.ORDER_PRICE
FROM ORDER_DETAIL
GROUP BY CUSTOMER_ID;
END;
こんにちはを必要とせず、正しい情報を示していますSOは一般的なチュートリアルサイトではありません。あなたがGoogleの場合、 "oracle triggers tutorial"にはたくさんの例があります。 – OldProgrammer
「うまくいかない」とはどういう意味ですか?エラーがありますか?もしそうなら、どちらですか?または予期しない動作が起こりますか?もしそうなら、あなたは何を期待しましたか? – Aleksej