Temat: błąd składni
Witam, pisze funkcje która odczytuje dane z dwóch tabel o takich samych nazwach atrybutów i wstawiam do 3 tabeli w formacie (miesiac, rok , wynik) . Napisałem tak jakby się logicznie wydawało że powinno działać ale pgAdmin wyrzuca mi błąd składni przy END LOOP; . Siedzę już chwile nad tym problemem i nic nie mogę wymyślić wiec może by ktoś rzucił okiem na kod
CREATE OR REPLACE FUNCTION rap() RETURNS void
LANGUAGE 'plpgsql' AS $$
declare
r4 decimal(10,2);
r5 decimal(10,2);
BEGIN
Create table if not exists raport(
miesiac int not null,
rok int,
wynik decimal(10,2),
PRIMARY KEY (miesiac)
);
for i IN 1 .. 12 LOOP
Select wynik from rok2004 where miesiac=i into r4;
Select wynik from rok2005 where miesiac=i into r5;
if (r4>r5) then
Insert into raport (miesiac,rok,wynik)
VALUES(i,2004,r4);
else if (r4<r5) then
Insert into raport (miesiac,rok,wynik)
VALUES(i,2005,r5);
else
Insert into raport (miesiac,rok,wynik)
VALUES(i,20042005,r4);
END IF;
END LOOP;
END;
$$;