Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/02/2012, 10:31
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
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)