Таблица:
CREATE TABLE big_bank(
id SERIAL NOT NULL PRIMARY KEY,
fio TEXT NOT NULL,
percent NUMERIC DEFAULT 0,
score MONEY DEFAULT 0,
total MONEY DEFAULT 0);
Триггер:
CREATE OR REPLACE FUNCTION autocountfunc() RETURNS TRIGGER AS $big_bank$
BEGIN
NEW.total = NEW.score + (NEW.percent/100 * NEW.score);
RETURN NEW;
END;
$big_bank$ LANGUAGE plpgsql;
CREATE TRIGGER auto_count BEFORE INSERT OR UPDATE ON big_bank FOR EACH ROW EXECUTE PROCEDURE autocuontfunc();
Заношу данные в таблицу:
INSERT INTO big_bank (fio, percent, score) VALUES ('Vittorio Scaletta A' , 2.0, 60000);
И должно быть значение total = 61200$, однако высчитывает total = 1200$, почему? не могу понять...
psql v.9.3.13