Cita:
Iniciado por gnzsoloyo 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