Oracle - ORA-00907

Manuel
18 de Agosto del 2005
Hola amig@s,
tengo la siguiente sentencia:

SELECT DISTINCT
DAFN_DES_LINEA_PREPAGO.NUM_MOVIL,
DAFN_DES_CR_RESPUESTA.RESPUESTA,
( case
when DAFN_DES_CR_RESPUESTA.RESPUESTA in ('CONTRATO VODAFONE', 'PREPAGO VODAFONE') then 'VODAFONE'
else ''
end ) as "Compa"
FROM
DAFN_DES_CR_RESPUESTA,
DAFN_AAP_CUEST_CLIENTE,
DAFN_DES_CR_CUESTIONARIO,
DAFN_DES_CR_PREGUNTA,
DAFN_DES_LINEA_PREPAGO
WHERE
( DAFN_DES_CR_CUESTIONARIO.ID_CUESTIONARIO=DAFN_AAP_CUEST_CLIENTE.ID_CUESTIONARIO )
AND ( DAFN_AAP_CUEST_CLIENTE.ID_CUEST_CLIE=DAFN_DES_CR_RESPUESTA.ID_CUEST_CLIE )
AND ( DAFN_DES_CR_RESPUESTA.ID_COD_PREG=DAFN_DES_CR_PREGUNTA.ID_COD_PREG )
AND ( DAFN_DES_LINEA_PREPAGO.ID_LINEA_PREPAGO=DAFN_AAP_CUEST_CLIENTE.ID_LINEA_PREPAGO )
AND (
DAFN_AAP_CUEST_CLIENTE.FEC_INICIO >= @variable('Fecha de ayer')
AND DAFN_DES_CR_CUESTIONARIO.NOMBRE IN ('RETENCIÓN PORTADOS PREPAGO', 'RETENCIÓN_PORTADOS ESPECIAL')
AND DAFN_DES_CR_PREGUNTA.COD_PREG IN (5707, 5677)
)

me dice q falta parentesis derecho y ya lo he revisado.

Alguna ayuda o sugerencia?
Muchas gracias.
Saludos.


Manuel Lopez
18 de Agosto del 2005
Hola tocayo ...

Lo he chequeado bien y todo esta Ok
sintacticamente..... te propongo que hagas el select por etapas, y le vayas poniendo cosas hasta que lo conformes completoooo y asi podras acotar mejor donde esta el problemaaaa ...

Manuel
18 de Agosto del 2005
Hola otra vez,
he suprimido la parte del case y funciona correctamente. Es a la hora de poner el CASE cuando me da el error.
Alguien me puede decir la sintaxis del CASE??????

Gracias.

joanmanuel
18 de Agosto del 2005
revisa a partir del when...