Usuário com melhor resposta
case

Pergunta
-
Prezados, na SQl abaixo eu estou precisando que quanto o resultado do SQL seja NULL, ele traga ' ** ' pois o produto nao tem equipamento, tentando fazer isso no Case, porem nao estou conseguindo.
vejam a SQL
SELECT
T.NSEQITMMOV AS 'Seq. Item',P.NOMEFANTASIA AS 'Nome do Produto'
,
T
.QUANTIDADE AS 'Quantidade' ,T.PRECOUNITARIO AS 'R$ Unitario',T
.VALORTOTALITEM AS 'Total' ,CASE
INNER
JOIN TPRD AS P ON P.IDPRD = T.IDPRD
WHERE
T.IDMOV = '144115'
talvez eu esteja fazendo o case errado, somente pode trazer ** quando o campo for NULL.
obrigado a todos pela ajuda.
Respostas
-
Boa tarde,
Acho que neste caso o Case pode ser substituido por Coalesce mais ou menos como segue:
Coalesce(T.IDOBJOFICINA, '**') as 'Equip'
Espero que seja útil.
Assinatura: Imobiliarias em Suzano- Sugerido como Resposta Eduardo Gomes Pereira quarta-feira, 18 de janeiro de 2012 12:11
- Marcado como Resposta Ronnie Von quarta-feira, 18 de janeiro de 2012 18:35
-
Também pode tratar com ISNULL:
SELECT
T.NSEQITMMOV AS 'Seq. Item',P.NOMEFANTASIA AS 'Nome do Produto',
T.QUANTIDADE AS 'Quantidade' ,T.PRECOUNITARIO AS 'R$ Unitario',
T.VALORTOTALITEM AS 'Total' ,
isnull(T.IDOBJOFICINA, '**') as 'Equip'
FROM
TITMMOV AS T
INNER JOIN TPRD AS P
ON P.IDPRD = T.IDPRD
WHERE
T.IDMOV = '144115'
Abraços, Weslley Moura MCP - MCTS - ORA SqlExpert- Sugerido como Resposta Eduardo Gomes Pereira quarta-feira, 18 de janeiro de 2012 12:11
- Marcado como Resposta Ronnie Von quarta-feira, 18 de janeiro de 2012 18:35
Todas as Respostas
-
Boa tarde,
Acho que neste caso o Case pode ser substituido por Coalesce mais ou menos como segue:
Coalesce(T.IDOBJOFICINA, '**') as 'Equip'
Espero que seja útil.
Assinatura: Imobiliarias em Suzano- Sugerido como Resposta Eduardo Gomes Pereira quarta-feira, 18 de janeiro de 2012 12:11
- Marcado como Resposta Ronnie Von quarta-feira, 18 de janeiro de 2012 18:35
-
Também pode tratar com ISNULL:
SELECT
T.NSEQITMMOV AS 'Seq. Item',P.NOMEFANTASIA AS 'Nome do Produto',
T.QUANTIDADE AS 'Quantidade' ,T.PRECOUNITARIO AS 'R$ Unitario',
T.VALORTOTALITEM AS 'Total' ,
isnull(T.IDOBJOFICINA, '**') as 'Equip'
FROM
TITMMOV AS T
INNER JOIN TPRD AS P
ON P.IDPRD = T.IDPRD
WHERE
T.IDMOV = '144115'
Abraços, Weslley Moura MCP - MCTS - ORA SqlExpert- Sugerido como Resposta Eduardo Gomes Pereira quarta-feira, 18 de janeiro de 2012 12:11
- Marcado como Resposta Ronnie Von quarta-feira, 18 de janeiro de 2012 18:35
-