o case tu vai usar dentro de um select o if e o elsif são usados em blocos pl sql.
quanto a performance , como já foi batido aqui no fórum é sempre melhor fazer tudo que foi possivel em sql do que em pl-sql.
Só preste atenção se o local onde tu vai usar o case suporta o comando case. Se não suportar o case , faça com decode que deve funcionar.
Bom o link, eu nunca tinha trabalhado com case em um bloco pl sql, sempre usei if's e sempre me serviram bem.
É o caso de sempre trabalhar os código de maneiras semalhantes, já sair programando, pois já se tem um caminho mais ou menos desenhado do que deve ser feito.
Além dos padrões de desenvolvimento estabelecidos, seu eu sair programando com case ao invés de if perigo do código ser alterado posteriormente.
Mas é sempre bom saber que existem mais maneiras para desenvolver o código.
Até por que um dia quem sabe eu quem vou desenvolver os padrões de desenvolvimento.