Ver Mensaje Individual
  #5 (permalink)  
Antiguo 10/06/2013, 13:15
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Ordenar Resultado de la Consulta

Hola vesper_metal90:

No entiendo por qué utilizar en primer lugar un UNION, si a final de cuentas lo único la única diferencia es una condición... Esto sería lo mismo que hacer esto:

Código MySQL:
Ver original
  1.    dcon.idEmpleado,
  2.    CONCAT(dcon.aPaterno, ' ', dcon.aMaterno, ' ', dcon.nombre) nombreCompleto
  3. FROM $bd_Cont.$tb_Empleado dcon  
  4. LEFT JOIN BD_CYSA.CAT_FUNCIONARIOS func
  5. ON dcon.idEmpleado=func.idEmpleado
  6.    dcon.idPuesto NOT IN (59,45,106) AND
  7.    (func.fechaBaja IS NULL OR
  8.     dcon.idEmpleado = '".$liderAuditoria."');

La cláusula AS es completamente inútil. Ahora bien, si el problema es la ordenación, en el unión la cláusula ORDER BY se puede comportar de maneras distintas, dependiendo de cómo la utilices, puedes ordenar por partes o también ordenar la consulta final

Código MySQL:
Ver original
  1. SELECT * FROM tabla1
  2. SELECT * FROM tabla2
  3. ORDER BY campo;
  4.  
  5. (SELECT * FROM tabla1 ORDER BY campo)
  6. (SELECT * FROM tabla2 ORDER BY campo)
  7.  
  8. SELECT * FROM tabla1
  9. (SELECT * FROM tabla2 ORDER BY campo)
  10.  
  11. (   SELECT * FROM tabla1
  12.     UNION
  13.     SELECT * FROM tabla2) T
  14. ORDER BY campo;

Haz la prueba y nos comentas.

Saludos
Leo.