Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/12/2005, 08:16
masterboy6666
 
Fecha de Ingreso: mayo-2004
Mensajes: 183
Antigüedad: 20 años
Puntos: 0
Ordenacion alfabetica en español

Hola, tengo el siguiente problema necesito ordernar los apellidos en orden alfabetico en el lenguaje español. El problema radica especialmente en los apellidos que comienzan con la letra ch, por ejemplo: Chavez, Chong, etc.

La estructura de la tabla es la siguiente:
empleado.nombre, empleado.apellido_paterno, empleado.apellido_materno, etc(no son relevantes)

Me sugieron que hiciera subconsultas y posteriormente las uniera, aqui les muestro como queda la consulta.

select * from empleado where substring(apellido_paterno,1,2)<'ch'
union
select * from empleado where substring(apellido_paterno,1,2)='ch'
union
select * from empleado where substring(apellido_paterno,1,2)>'ch'

Cada consulta por separado, me devuelve los resultados correctos, pero en desorden por lo que tengo que colocar un order by.

El problema radica en que si coloco un order by en cada subconsulta me marca un error en union. Y si no coloco el order by me los regresa revueltos.

Espero que me puedan ayudar.

Gracias.