Ver Mensaje Individual
  #5 (permalink)  
Antiguo 15/09/2015, 02:43
lolo435
 
Fecha de Ingreso: abril-2013
Mensajes: 36
Antigüedad: 11 años, 1 mes
Puntos: 0
Respuesta: Fallo en consulta SQL

Cita:
Iniciado por gnzsoloyo Ver Mensaje
MySQL no es Oracle.
Los dos pertenecen a la misma empresa, pero son DBMS totalmente diferentes y con juegos de funciones, sintaxis y capacidades completamente distintas.
No puedes usar funciones no estándares entre sistemas tan diferentes.

Las funciones WHEN son de oracle y el problema esta ahí. Si el WHEN del where los sustituyo por una de las condiciones, funciona perfectamente, es decir, sustituir esto

WHERE
(
IF((SELECT COUNT(DISTINCT HOSTNAME,INSTANCIA)

FROM

subsistemas

WHERE TIPO='SAP'
AND MW_EDITION='SCS')=0,
MW_EDITION IN ('CI','D','JC') OR TIPO='SBL',
MW_EDITION IN ('CI','D','SCS') OR TIPO='SBL'
)
);


Por esto


WHERE

MW_EDITION IN ('CI','D','JC') OR TIPO='SBL'

);

No se pueden utilizar when en los where?


Gracias