17/02/2012, 10:31
|
Colaborador | | Fecha de Ingreso: marzo-2008 Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 8 meses Puntos: 300 | |
Respuesta: Ordenar comenzando por un identificador especifico. Para eso sí que hay solución
SELECT * FROM tutabla ORDER BY FIELD(tucampo,'3') DESC, tucampo, otrocampo
Mira sobre ORDER BY FIELD
Piensa que los valores que no incluyes en el BY FIELD (en tu caso los otros números) los entenderá como blancos y los ordenará los primeros; de ahí el truco de hacer la primera ordenación descendente.
También lo puedes hacer con una consulta con union all
(SELECT * FROM tutabla WHERE tucampo = 3 ORDER BY otro campo)
UNION ALL
(SELECT * FROM tutabla WHERE tucampo <> 3 ORDER BY tucampo, otro campo) |