By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
CREATE TABLE IF NOT EXISTS sum
(id TEXT UNIQUE,
name TEXT,
total TEXT
)
CREATE TABLE IF NOT EXISTS newtable
(id TEXT,
name TEXT,
num TEXT
)
CREATE TRIGGER
AFTER INSERT
ON newtable
FOR EACH ROW
BEGIN
UPDATE sum
SET total = total + NEW.num
WHERE name = NEW.name;
END
INSERT INTO sum(id, name, total)
VALUES('001', 'name1', '')
INSERT INTO sum(id, name, total)
VALUES('002', 'name2', '')
INSERT INTO newtable(id, name, num)
VALUES('001', 'name1', '1000')
INSERT INTO newtable(id, name, num)
VALUES('002', 'name2', '2000')
INSERT INTO newtable(id, name, num)
VALUES('001', 'name1', '4000')
SELECT * FROM newtable
id | name | num |
---|---|---|
001 | name1 | 1000 |
002 | name2 | 2000 |
001 | name1 | 4000 |
SELECT * FROM sum
id | name | total |
---|---|---|
001 | name1 | 5000 |
002 | name2 | 2000 |