CASE

23/03/2005 - 11:46 por Racsus | Informe spam
Hola

Tengo en la siguiente sentencia sql lo siguiente:

ACTIV = CASE WHEN ALM_MOVIMIENTOS.ALMMOV_CODPARTE <> ''
THEN AVISOS_TODOS.AVI_ACTIVIDAD WHEN
ALM_MOVIMIENTOS.ALMMOV_ALMACEN_ACTIVIDAD <> '' THEN
ALM_MOVIMIENTOS.ALMMOV_ALMACEN_ACTIVIDAD ELSE
ALMSAL_ACTIVIDAD END

el problema es que cuando meto un WHERE ACTIV = ...

me dice que la columna ACTIV no existe. como puedo filtrar
con columnas CASE?

Saludos, Oscar
 

Leer las respuestas

#1 Nuno Santos
23/03/2005 - 12:36 | Informe spam
La coluna ACTIV es un alias de una coluna de la tabla, deves utilizar la
coluna que está en el case y no su alias


Nuno Santos
nunos7[REMOVER]@hotmail.com

"Racsus" wrote in message
news:0b3201c52f95$9c4dbca0$
Hola

Tengo en la siguiente sentencia sql lo siguiente:

ACTIV = CASE WHEN ALM_MOVIMIENTOS.ALMMOV_CODPARTE <> ''
THEN AVISOS_TODOS.AVI_ACTIVIDAD WHEN
ALM_MOVIMIENTOS.ALMMOV_ALMACEN_ACTIVIDAD <> '' THEN
ALM_MOVIMIENTOS.ALMMOV_ALMACEN_ACTIVIDAD ELSE
ALMSAL_ACTIVIDAD END

el problema es que cuando meto un WHERE ACTIV = ...

me dice que la columna ACTIV no existe. como puedo filtrar
con columnas CASE?

Saludos, Oscar

Preguntas similares