create or replace function getf(arg character varying(255)) returns int as $$
begin
if arg = 'a' then
return 1;
else
return 2;
end if;
end; $$ language plpgsql;
Observe que esta é uma função PL/pgSQL.
O manual online tem um excelente capítulo sobre PL/pgSQL . Isso deve fornecer tudo o que você precisa para começar a escrever funções procedurais com amplo suporte para ramificação lógica.