Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/07/2019, 06:47
lukitas
 
Fecha de Ingreso: septiembre-2007
Mensajes: 16
Antigüedad: 16 años, 7 meses
Puntos: 2
Busqueda Ordenacion a partir de una letra

Hola a todos,
Necesito ayuda con lo siguiente y por más que he mirado no encuentro una solución.
Tengo una tabla con un campo APELLIDO1 que la quiero ordenar a partir de una letra, en lugar de la ordenación típica de ascendente o descendente.
ABAD
BRAVO
CASA
ROMERO
RUIZ
SALMERON
TRIANA

Por ejemplo que la ordenación empieze por la letra R y el resultado sea algo como:
ROMERO
RUIZ
SALMERON
TRIANA
ABAD
BRAVO
CASA

He buscado y probado poniendo algo como:

SELECT * FROM `usuarios` WHERE 1
ORDER BY
CASE WHEN apellidos LIKE "R%" THEN 0
WHEN apellidos LIKE "S%" THEN 1
WHEN apellidos LIKE "T%" THEN 2
ELSE 3
END



Pero hace la ordenación de los apellidos que empiezan con las letras que pongo en el WHEN pero después continua con la A y no con el orden del alfabeto.
Y me parece mala idea poner tantos when como letras del alfabeto porque seguro que falla por algún sitio

Alguna idea? Muchas gracias.

Última edición por lukitas; 09/07/2019 a las 10:28 Razón: Ampliando información