sql >> Base de Datos >  >> RDS >> Mysql

ORDEN PERSONALIZADO POR para ignorar 'el'

Lo mejor es tener una columna calculada para hacer esto, de modo que pueda indexar la columna calculada y ordenar por eso. De lo contrario, ordenar será mucho trabajo.

Entonces puede tener su columna calculada como:

CASE WHEN title LIKE 'The %' THEN stuff(title,1,4,'') + ', The' ELSE title END

Editar:si STUFF no está disponible en MySQL, use RIGHT o SUBSTRING para eliminar los 4 caracteres principales. Pero aún intente usar una columna calculada si es posible, para que la indexación pueda ser mejor. La misma lógica debería ser aplicable para extraer "A" y "An".

Rob