Como unir em uma coluna os valores não nulos de outras duas colunas da mesma tabela

Olá!

Gostaria de saber como trazer em uma coluna os valores não nulos de duas colunas da mesma tabela.

Exemplo Tabela Cliente:

NOME CPF CNPJ
jmacedo null 11111111111111
Elias 22222222222 null

Gostaria de obter a seguintes tabelas:
NOME CPF/CNPJ
jmacedo 11111111111111
Elias 22222222222

Agradeço pela ajuda!

Aonde? SQL? qual banco? tu pode usar um case, ou decode do Oracle.

select nome, cpf from cliente where cpf is not null
union
select nome, cnpj from cliente where cnpj is not null

Saindo um pouco da sintaxe da instrução SQL, neste caso, teria realmente necessidade de ter as duas colunas? Nos projetos que eu trabalhei sempre usei uma coluna única CPF/CNPJ e, de alguma forma, controlo com uma flag se ele é PF ou PJ.

Voltando para a sintexe do SQL só complementando o SQL enviado por rogelgarcia:

select nome, cpf as cpf_cnpj from cliente where cpf is not null union select nome, cnpj as cpf_cnpj from cliente where cnpj is not null

Galera, o sql do pvrsouza funcionou perfeitamente!
Minhas tentativas estavam bem proximas, mas não domínio muito sql.

Obrigado pvrsouza e a todos do forum!

Por nada… kkkkk :slight_smile:

[quote=Jonasds]Galera, o sql do pvrsouza funcionou perfeitamente!
Minhas tentativas estavam bem proximas, mas não domínio muito sql.

Obrigado pvrsouza e a todos do forum! [/quote]

Só corrigindo: “o sql do rogelgarcia funcionou …!”.

Só fiz dar uma contribuição.

:smiley:

Abs