FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
consultas de union ordenadas
Hola:
Tengo un problema con una consulta sql de union, necesito unir dos selects, que contienen como campos para ordenar f.entrada y orden_fabricacion, pero necesitaria que el campo orden de fabricacion en una consulta se ordene de forma ascendente y en otra de forma descendente, pero algo pasa porque solo me lo ordena de la forma que le digo en la segunda consulta. Es posible ordenar en una consulta de union el mismo campo de diferente forma en cada select?? si es posible agradeceria me dijerais que es lo que hago mal, aqui esta el codio que escribo en acces Código:
SELECT LINEA2.ORDEN_FABRICACION, chasislinea2.n_chasis, LINEA2.marca, LINEA2.MODELO, chasislinea2.fechaentrada, chasislinea2.fechaverificacion FROM LINEA2 INNER JOIN chasislinea2 ON LINEA2.XASSIS = chasislinea2.n_chasis WHERE (((chasislinea2.fechaentrada) Is Null)) ORDER BY LINEA2.ORDEN_FABRICACION DESC; UNION SELECT LINEA2.ORDEN_FABRICACION, chasislinea2.n_chasis, LINEA2.marca, LINEA2.MODELO, chasislinea2.fechaentrada, chasislinea2.fechaverificacion FROM LINEA2 INNER JOIN chasislinea2 ON LINEA2.XASSIS = chasislinea2.n_chasis WHERE (((chasislinea2.fechaentrada) Is Not Null) AND ((chasislinea2.fechaverificacion) Is Null)) ORDER BY chasislinea2.fechaentrada ASC, LINEA2.ORDEN_FABRICACION ASC; Si no es posible solucionar el problema asi, me podria decir otra forma de plantearlo. Gracias. |
#2
|
|||
|
|||
No estoy seguro si alguna B.D. soporta lo que quieres, pero por lo general los motores de B.D. aplican la sentencia de ordenación sobre el resultado global de la consulta, es decir sobre las filas recogidas una vez efectuada la unión.
|
#3
|
|||
|
|||
Consultas de union ordenadas
Hola
En la ayuda de SQL dice que para realizar UNION solo puede usar el Order By en la ultima de ellas. Yo te recomiendo que ese proceso lo realices creando una tabla temporal donde insertes las consultas y ordenes al final la tabla temporal por el criterio que necesita y podras resolver el problema. Yo cada vez que una consulta se me pone dificil recurro a la creacion de tablas y eso no falla. Saludos Luis Garcia _____________________________ La mejor manera de decir es hacer |
#4
|
|||
|
|||
Hola foreros:
No conozco muchos motores, pero me parece que sí se puede ordenar todo lo que traiga la consulta, por ejemplo:
El 1 es el campo1 que traerá toda la consulta, si quisiera ordenar por campo2, cambio por order by 2 A ver prueben si funciona en otros motores y hagan favor de comentarlo Saludos
__________________
Ernesto R. |
#5
|
||||
|
||||
¿En qué motor estas ejecutando la consulta?...
¿Puede hacer esto?, no es prolijo pero puede ser una opción:
__________________
delphi.com.ar Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla. |
|
|
|