Technè

Tecnologia & Experiência do Usuário no C.E.S.A.R

Oracle e a função NVL

Posted by Francisco On agosto - 19 - 2010

Frequentemente nos deparamos com algum select de banco de dados onde alguns campos retornam null. É comum que o tratamento desta situação seja feita do lado da aplicação, gerando um aumento de código. Para facilitar a vida do programador, no banco de dados Oracle, temos uma função que faz esse serviço, a função NVL. Esta função recebe dois parâmetros, o primeiro é o nome do campo que queremos tratar e o segundo parâmetro é o valor que será retornado quando for encontrado o null no campo escolhido. Abaixo segue o exemplo:

Imagine uma tabela testeNVL com os campos Codigo, Descricao e Valor.

Suponhamos que o “select * from testeNVL” retorne:

Codigo Descricao Valor
—— ——— —–
1 Codigo 1 1
2 Codigo 2 null
3 null null

Neste caso seria necessário fazer o tratamento da Descrição e do Valor.

Veja como facilitaria a utilização da função NVL no Oracle:

Select Codigo, NVL(Descricao, ‘N/A’), NVL(Valor, 0.0) from testeNVL;

Codigo Descricao Valor
—— ——— —–
1 Codigo 1 1
2 Codigo 2 0
3 N/A 0

Simples assim. Abraços e até a próxima.
Francisco Athayde