Я новичок в PostgreSQL и пытаюсь выполнить некоторые запросы. Я написал эту функцию в sql, но я получаю ошибку, когда пытаюсь выполнить следующий код:
CREATE OR REPLACE FUNCTION title_basics_partitioner()
RETURNS TRIGGER AS $$
BEGIN
IF (startyear is null) THEN
INSERT INTO startyear_null VALUES (NEW.*);
ELSE IF (startyear >= '1874' AND startyear < '1894') THEN
INSERT INTO startyear_1874_1894 VALUES (NEW.*);
ELSE IF (startyear >= '1894' AND startyear < '1914') THEN
INSERT INTO startyear_1894_1914 VALUES (NEW.*);
ELSE IF (startyear >= '1914' AND startyear < '1934') THEN
INSERT INTO startyear_1914_1934 VALUES (NEW.*);
ELSE IF (startyear >= '1934' AND startyear < '1954') THEN
INSERT INTO startyear_1934_1954 VALUES (NEW.*);
ELSE IF (startyear >= '1954' AND startyear < '1974') THEN
INSERT INTO startyear_1954_1974 VALUES (NEW.*);
ELSE IF (startyear >= '1974' AND startyear < '1994') THEN
INSERT INTO startyear_1974_1994 VALUES (NEW.*);
ELSE IF (startyear >= '1994' AND startyear < '2014') THEN
INSERT INTO startyear_1994_2014 VALUES (NEW.*);
ELSE IF (startyear >= '2014' AND startyear < '2115') THEN
INSERT INTO startyear_2014_2115 VALUES (NEW.*);
ELSE
RAISE EXCEPTION 'Out of range year value. Fix the title_basics_insert_trigger() function!';
END IF;
RETURN NULL;
END;
$$ LANGUAGE plpgsql;
И вот ошибка, которую я получаю:
ERROR: syntax error at or near ";"
LINE 26: END;
^
SQL state: 42601
Character: 1174
Любые идеи