Ver Mensaje Individual
  #5 (permalink)  
Antiguo 16/10/2008, 01:04
jurena
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 17 años
Puntos: 300
Respuesta: ordenar bien en mysql

K-SUMA te ha aconsejado bien. Para los números romanos, yo te aconsejaría tratar de aprovechar el orden alfabético .
Con esta consulta ordenarás hasta tres separaciones con puntos de un campotexto, es decir, lo que tienes. Prueba y dinos. Te alcanza en números romanos hasta miles, siempre que los pongas con varias M.

Código sql:
Ver original
  1. SELECT campotexto
  2. FROM `tabla`
  3. ORDER BY REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( REPLACE( SUBSTRING_INDEX( campotexto, '.', 1 ) , 'CM', 'ZZZZ' ) , 'M', 'ZZZZZ' ) , 'CD', 'YYYY' ) , 'D', 'YYYYY' ) , 'XC', 'XXXXXXXXX' ) , 'C', 'XXXXXXXXXX' ) , 'XL', 'XXXX' ) , 'L', 'XXXXX' ) , 'IX', 'VIIII' ) , 'X', 'VIIIII' ) , CAST( SUBSTRING_INDEX( campotexto, '.', 2 ) AS UNSIGNED ) , CAST( SUBSTRING_INDEX( campotexto, '.', 3 ) AS UNSIGNED )

Última edición por jurena; 17/10/2008 a las 12:14