Обновите столбец на основе года другого столбца в postgresql, используя триггер - PullRequest
0 голосов
/ 07 мая 2018

Я пытаюсь создать триггер для обновления напоминания столбца (дата типа данных), используя данные столбца date_of_join (дата типа данных) той же таблицы. Напоминание должно быть 1 января следующего года.

Моя функция:

CREATE OR REPLACE FUNCTION update_reminder()
RETURNS TRIGGER AS
$$
BEGIN
NEW."reminder" := make_date(CAST (extract(year from timestamp NEW."date_of_join") AS INTEGER) ,2,3);
RETURN NEW;
END 
$$ LANGUAGE 
plpgsql;

Мой триггер:

CREATE TRIGGER "Trigger1"
BEFORE INSERT ON faculty
for each row
EXECUTE PROCEDURE update_reminder();

Это дает мне ошибку: синтаксическая ошибка в или около "NEW"

Как это сделать?

1 Ответ

0 голосов
/ 07 мая 2018

date_trunc можно использовать для округления до начала года; затем вы можете добавить 1 год, чтобы прибыть в январе следующего года:

NEW.reminder := date_trunc('year', NEW.date_of_join) + INTERVAL '1 year';
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...