Pular para o conteúdo

Descubra o poder da função COALESCE

My Certification Path – Chapter I (Coalesce)

Como tinha dito no meu último post, eu finalmente vou tirar minha certificação. Na verdade, já passou há muito da hora.

A prova escolhida por mim foi a 1Z0-051 – Oracle Database 11g: SQL Fundamentals I e vai ser um esquenta para a 1Z0-047 – Oracle Database SQL Expert.

Vou aproveitar que estou determinado, e demonstrar sobre pontos interessantes encontrados nos estudos para a prova. Tenho certeza de que isso será de grande valia para outros que queiram seguir o caminho da certificação.

Para iniciar, vou falar um pouco sobre a função COALESCE.

COALESCE

Lembro de ter usado apenas uma vez essa função interessante. Ele retorna o primeiro argumento não NULO que encontrar, caso não encontre, retorna NULL. É bem útil quando se tem vários argumentos de possíveis retornos nos quais apenas um é preenchido em um registro.

Um exemplo:

SELECT COALESCE(NULL,NULL,NULL,4,NULL,3) FROM dual

RETORNA 4

SELECT COALESCE(NULL,NULL,NULL,3) FROM dual

RETORNA 3

SELECT COALESCE(NULL,NULL) FROM dual

RETORNA NULL

você pode utilizar valores fixos ou campos nos argumentos da função.

SELECT COALESCE(a.cod_item,a.cod_produto, a.cod_popid) FROM produto a

Ele irá retornar o valor do primeiro campo que não for NULO. Caso não encontre, retorna NULL.

Este é o primeiro post de muitos que virão, espero que tenham gostado !

Um grande abraço

Sergio Willians

Sergio Willians

Sergio Willians é o fundador do GPO (Grupo de Profissionais Oracle) e possui quase 30 anos de experiência em tecnologias Oracle, sendo especialista em desenvolvimento Forms/Reports, PL/SQL e EBS (E-Business Suite) nos módulos Receivables, Payables e General Ledger. Atualmente trabalha na Scania Latin America, onde se dedica à área de integração de dados com Confluent Kafka. Sua paixão é compartilhar conhecimento com a comunidade Oracle, contribuindo para o crescimento e a excelência da plataforma.

Comentário(s) da Comunidade

  1. Avatar de Jann Claude Mousquer

    Função interessante, mas tive que checar a documentação do Oracle, pois o seu exemplo acabou me confundindo um pouco.
    Creio que devio ao formato que foi exibido o retorno.
    Mas gostei do post, acompanharei os conseguintes.

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

plugins premium WordPress