SQL - Ayuda con CASE y reemplazar el 0 por VACIO

 
Vista:

Ayuda con CASE y reemplazar el 0 por VACIO

Publicado por Felipe (19 intervenciones) el 27/07/2006 23:22:19
Necesito hacer una seleccion que voy a tratar con un ado, pero al momento de tirarlo a la grilla necesito que los COSTO en 0 se representen como VACIO esto es para identificar visualmente y rapido a los que poseen costo de los que no, ya saben peticiones de jefes insencibles T_T

E estado luchano con el siguiente codigo, pero en la parte del ELSE no se como decir que cuando no sea 0 despliegue el valor real del costo que es un numero normal. Si pongo ELSE COSTO me tira este error:

Servidor: mensaje 8114, nivel 16, estado 5, línea 1
Error al convertir el tipo de datos varchar a numeric.

Lo cual es logico ya que antes me referi con un ' '


SELECT PRODUCTO, GLOSA, costo = CASE costo WHEN .00000000 THEN ' ' else 111 END
FROM flexline.PRODUCTO
WHERE (TIPOPRODUCTO = 'MATERIALES') AND (EMPRESA = 'E01')
ORDER BY PRODUCTO

Como puedo hacerlo?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con CASE y reemplazar el 0 por VACIO

Publicado por Isaías (5072 intervenciones) el 28/07/2006 18:11:39
¿Algo asi?
DECLARE @Costo int
SET @Costo = 20
PRINT @Costo
SELECT CASE WHEN @Costo > 0 THEN CAST(@Costo AS VARCHAR) ELSE '' END AS Costo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con CASE y reemplazar el 0 por VACIO

Publicado por Felipe (19 intervenciones) el 28/07/2006 18:44:51
No exactamente pero me resulto asi :D

SELECT PRODUCTO, GLOSA, costo = CASE costo WHEN .00000000 THEN ' ' else cast(costo as varchar) END
FROM flexline.PRODUCTO
WHERE (TIPOPRODUCTO = 'MATERIALES') AND (EMPRESA = 'E01')
ORDER BY PRODUCTO

Era tan simple como indicarle que el comparativo era varchar, todavia no entiendo el porque.......De todas dejo en vacio el dato costo los registros con costo en 0. Ahora se ve limpia la grilla visualmente :D Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con CASE y reemplazar el 0 por VACIO

Publicado por Isaías (5072 intervenciones) el 28/07/2006 23:41:52
Felipe

Dudo que la comparacion:

CASE costo WHEN .00000000

Funcione del todo bien.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar