Select buscar apenas campos com dados

Boa tarde pessoal,

To com uma dúvida aqui de sql, tem como eu fazer um select de uma tabela com uns determinados campos e ele trazer esses campor apenas o que tiver valor?
Vou explicar melhor

Exemplo:

select p.nome, p.nomepai, p.nomemae, p.numeroordem, p.apelido, p.nomecartorio, p.telefone, p.celular from pessoa p where p.individuo = 1 and p.id = 1

Uso esse comando para exibir estes dados em um relatorio, mais como no formulario nem todos campos sao obrigatorios, queria que o comando SQL me retornasse na propria
consulta apenas os campos que nao estao vazio, tem como?

Obrigado.

Ola, pelo que eu conheço de DB, não há como fazer, pois tens que especificar quais campos quer trazer, a menos que faça em etapas, primeiro tragas todos, ai verifica quais são nulos, apartir desta consulta vc gera um sql dinamica, trazendo somente os q quiser, não recomendo, é gambiarra, mas se resolver seu problema…

sugiro que não passe essa complexidade para o banco, faça um serviço com simples testes e filtre em nivel de app, fica mais legivel e facil.

Sim,

é possível. Não há qualquer difilcudade nisto. É deste jeito mesmo que você está fazendo.

Att,

opa, na sua DAO, que pega os dados do BD, faz simples if, elses

if (campo.isNull())
naoMostre();
else
mostre();

ou se for uma String
if (campo.isEmpty() )
naoMostre();
else
mostre();

coisas do tipo, vai tentando usar ae a lógica.
vlw

brenowbc

Do jeito que voce falou, fucniona sim, mais ai eu iria ter que implementar o sql junto à classe DAO, e nao é esse o meu propósito, o que eu queri realmente fazer
é ele me retornar apenas os campos com algum dado na propria consulta SQL.

mas justamente isso man, a DAO com BD é pra mecher tambem com os codigos SQL.

e só completando, acho que seria mais fácil e ficar com um melhor desempenho se você fizesse isso no proprio aplicativo,
pois acho que o desempenho sairia melhor.
mas vê ae kra.
um abraço