Como orderan desendente con un valor diferente al inicio de la lista...

29/09/2006 - 00:28 por Daniel G. Samborski | Informe spam
Hola, en un grupo alguien pregunto como podria ordenar una lista, pero que
siempre estuviera encima un nombre.

Por ejemplo:

e
d
a
b
c
f

Lo que preguntaba era como ordenar esta lista pero, por ejemplo, con el 'b'
arriba y luego todo ordenado.

b
a
c
d
e
f

Alguien le respondio con este ejemplo.

select * from tabla a where col != 'b'
order by col
union
select * from tabla a where col = 'b'

El tema es que cuando lo quiero probar me da un error, aparentemente no se
puede poner un order antes del union y, si lo coloco al final.

select * from tabla a where col != 'b'
union
select * from tabla a where col = 'b'
order by col


Es como si realizara un simple order by sin union.

select * from tabla
order by col



Como se puede hacer que esto funciones, la verdad que me intereso...



Daniel.
 

Leer las respuestas

#1 Isaias
29/09/2006 - 01:01 | Informe spam
Suponiendo que se pudiera, ¿Para que?
Saludos
IIslas


"Daniel G. Samborski" wrote:

Hola, en un grupo alguien pregunto como podria ordenar una lista, pero que
siempre estuviera encima un nombre.

Por ejemplo:

e
d
a
b
c
f

Lo que preguntaba era como ordenar esta lista pero, por ejemplo, con el 'b'
arriba y luego todo ordenado.

b
a
c
d
e
f

Alguien le respondio con este ejemplo.

select * from tabla a where col != 'b'
order by col
union
select * from tabla a where col = 'b'

El tema es que cuando lo quiero probar me da un error, aparentemente no se
puede poner un order antes del union y, si lo coloco al final.

select * from tabla a where col != 'b'
union
select * from tabla a where col = 'b'
order by col


Es como si realizara un simple order by sin union.

select * from tabla
order by col



Como se puede hacer que esto funciones, la verdad que me intereso...



Daniel.



Preguntas similares