No hay IF expr THEN result ELSE result END sintaxis para consultas SQL normales en Postgres. Como tampoco hay un IF() funciona como en MySQL, tienes que usar CASE :
select (
case (select '1')
when '1' then
case when 1=1 then 0.30::float else 0.50::float end
else
1.00::float
end
);