Problemas al filtar una CASE

09/12/2004 - 18:28 por Cass | Informe spam
Alguien que me tire una soga =:)

Tengo una SELECT donde uno de los campos es una función CASE para obtener
una clasificación de sucursales por zona geográfica (a partir del campo
sucursal de la tabla).
En la misma select necesito poder filtrar una de las opciones arrojadas por
el CASE

He probado algunas variantes pero no logro dar con la solución.

Adjunto la sentencia para aclarar un poco mas la idea:


Select
CODIGO,
SUM(IMPORTE),
MIN(FCH),
MIN(SUCURS) ,
CASE MIN(SUCURS)
WHEN '0001' THEN 'Sucursal Zona 1'
WHEN '0002' THEN 'Sucursal Zona 1'
WHEN '0003' THEN 'Sucursal Zona 2'
END
From VTMVH
Where CODIGO IS NULL
Group By CODIGO
Having SUM(IMPORTE) <>0 and (MIN(FCH) >= '2004-10-01' and MIN(FCH)<=
'2004-10-31'

Desde ya muchas gracias.

Preguntas similare

Leer las respuestas

#6 Ivan Pascual
11/12/2004 - 16:56 | Informe spam
Lo que os sucede es que en el having debe ir todo el case

Select
CODIGO,
SUM(IMPORTE),
MIN(FCH),
MIN(SUCURS) ,
CASE MIN(SUCURS)
WHEN '0001' THEN 'Sucursal Zona 1'
WHEN '0002' THEN 'Sucursal Zona 1'
WHEN '0003' THEN 'Sucursal Zona 2'
END
From VTMVH
Where CODIGO IS NULL
Group By CODIGO
Having SUM(IMPORTE) <>0 and (MIN(FCH) >= '2004-10-01' and MIN(FCH)<'2004-10-31' AND
CASE MIN(SUCURS)
WHEN '0001' THEN 'Sucursal Zona 1'
WHEN '0002' THEN 'Sucursal Zona 1'
WHEN '0003' THEN 'Sucursal Zona 2'
END
Respuesta Responder a este mensaje
#7 Liliana Sorrentino
13/12/2004 - 13:13 | Informe spam
Hola Ivan,
¿No tenés una tabla de Sucursal-Zona?
Liliana.

"Ivan Pascual" escribió en el mensaje
news:#
Lo que os sucede es que en el having debe ir todo el case

Select
CODIGO,
SUM(IMPORTE),
MIN(FCH),
MIN(SUCURS) ,
CASE MIN(SUCURS)
WHEN '0001' THEN 'Sucursal Zona 1'
WHEN '0002' THEN 'Sucursal Zona 1'
WHEN '0003' THEN 'Sucursal Zona 2'
END
From VTMVH
Where CODIGO IS NULL
Group By CODIGO
Having SUM(IMPORTE) <>0 and (MIN(FCH) >= '2004-10-01' and MIN(FCH)<> '2004-10-31' AND
CASE MIN(SUCURS)
WHEN '0001' THEN 'Sucursal Zona 1'
WHEN '0002' THEN 'Sucursal Zona 1'
WHEN '0003' THEN 'Sucursal Zona 2'
END


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida