У меня есть такие таблицы:
Таблица доставок:
ProducernName| ... |Amount
A |... |1
B |... |2
A |... |5
C |... |3
C |... |5
и другая таблица производителей:
Name|...| Shipped Amount
A |...| NULL
B |...| NULL
C |...| NULL
Идея состоит в том, чтобы создать триггер, который суммирует сумму отгрузки из таблицы Shippings для каждого производителя и обновляет ее в таблице Producers после любого изменения (UPDATE, DELETE, INSERT), если триггер работает, таблица Producers будет выглядеть следующим образом:
Name|...| Shipped Amount
A |...| 6
B |...| 2
C |...| 8
Что я попытался найти сумму суммы и сохранить ее в объявленной мной переменной, но я не знаю, в правильном ли я направлении мышления и как вставить сумму в нужную строку в таблице производителей ..
CREATE TRIGGER SumShippedTrigger
AFTER INSERT OR DELETE OR UPDATE
OF amount
ON SHIPPINGS
FOR EACH ROW
DECLARE
producerShippedAmount NUMBER(10);
producer VARCHAR2(10);
BEGIN
SELECT SUM(amount) INTO producerShippedAmount
FROM Shippings
WHERE producer= :NEW.producer;
producer:= :NEW.procuder;
END;
/
если кто-нибудь может мне помочь, я буду благодарен! :)