SELECT CAMPO ´-´ = EM BRANCO

Firebird

26/03/2004

alo !?
como fazer para dar um SELECT e para o campo nome (por exemplo) que for igual a ´-´ aparecer somente como se nao estivesse nada !!!

SELECT NOME FROM TABELA ORDER BY NOME

************************
TESTE
-
TESTE2
TESTE3
TESTE4
TESTE5
-
************************

aparecer...
************************
TESTE

TESTE2
TESTE3
TESTE4
TESTE5

************************


desde ja agradeço
[]´s


Seven

Seven

Curtidas 0

Respostas

Afarias

Afarias

26/03/2004

Vc pode fazer isso no cliente, usando o evento OnGetText do TField (Delphi) ou criando um campo Calculado e de outras tantas formas...

No banco, a forma mais fácil seria usando a função CASE ou NULLIF do FB 1.5 ... em outra versão, só com UDF ou Stored Procedure.


T+


GOSTEI 0
Seven

Seven

26/03/2004

a.farias...

uso o FB 1.5
e tipo, procurei por um help na apostila do FIREBIRD sobre
NULLIF e nao obtive sucesso...
enfim... como usar essa funcao ??

para esse select por exemplo:

SELECT NOME(se nome for igual a ´-´ retornar apenas ´´ em branco) FROM TABELA ORDER BY NOME

[]s


GOSTEI 0
Afarias

Afarias

26/03/2004

com CASE::

SELECT CASE NOME 
                WHEN ´-´ THEN ´´
                ELSE NOME 
            END
FROM TABELA ORDER BY 1



com NULLIF::

SELECT NULLIF(NOME, ´-´) AS NOME
FROM TABELA ORDER BY 1




T+


GOSTEI 0
POSTAR