Problem: pgAdmin III query tool “IF” statement ERROR

Question : pgAdmin III query tool “IF” statement ERROR

This is giving me an error in the pgAdmin II query tool.

IF EXISTS(SELECT relname FROM pg_class WHERE relname = ‘Angelina_VR_Data’) THEN
SELECT 2
ELSE
SELECT 1
END IF;

The error is:

ERROR: syntax error at or near “IF”
SQL state: 42601
Character: 1

Thank you in advance for your help. Please Help! This is driving me crazy!!!


 

Solution: pgAdmin III query tool “IF” statement ERROR

if then else endif is PLPGSQL syntax not SQL syntax. The equivalent is the CASE WHEN THEN ELSE END construct. eg.

testdb=> select case when exists(select 1) then 2 else 1 end;
case
——
2
(1 row)

select case when EXISTS(SELECT relname FROM pg_class WHERE relname = ‘Angelina_VR_Data’) THEN 2 else 1 end;