Ver Mensaje Individual
  #1  
Antiguo 08-09-2016
plionut plionut is offline
Miembro
NULL
 
Registrado: dic 2015
Posts: 11
Reputación: 0
plionut Va por buen camino
Resultado inexplicable UNION ALL

Hola de nuevo. Me he encontrado con una consulta SQL cuyo resultado no me lo explico. He reducido el problema hasta llegar a estas dos pequeñas consultas:

Código SQL [-]
SELECT TOP 1 Q.CAMPO FROM
 (SELECT CAMPO = 
    CASE 
    WHEN EXISTS(aquí va una consulta que devuelve 0 registros) 
    THEN '03' ELSE '04' END 
  UNION ALL SELECT '02') Q

Código SQL [-]
SELECT TOP 1 Q.CAMPO 
FROM (SELECT CAMPO = '04' UNION ALL SELECT '02') Q

Si ejecutan estas dos instrucciones en su Microsof SQL Management Studio, verán que los resultados son distintos. Yo me imaginaba que el resultado de ambas sería '04', pero solo la segunda consulta devuelve este resultado. Me imagino que la subconsulta altera el resultado, pero... Cual es el motivo? Gracias.
Responder Con Cita