122014en esto
122013
112014
112013
102014
102013
los campos son Tipo char(6)
102013
112013
122013
102014
112014
122014
gracias pro su ayuda
| |||
Respuesta: Como puedo ordernar estos datos descendentemente? Hola richardinj: No estoy seguro, pero por el contenido que tienes en el campo y la ordenación que quieres hacer, estás almacenando una especie de fecha en formato MMYYYY... si esto es es correcto, entonces tienes un pésimo diseño de tablas... una fecha, por ningún motivo, debe ser almacenada como VARCHAR. Aquí habría que considerar varias cosas: Primero, ¿las cadenas son siempre de 6 caracteres? Segundo, ¿las cadenas son siempre números? Si respondes afirmativamente a estas dos preguntas, entonces para ordenar los datos, tienes de dos sopas: 1. Si los textos corresponden a fecha (es decir, los dos primeros dígitos van de 01 a 12 y los ultimos 4 corresponden a un año), entonces puedes tratar de convertir el texto a fecha y ordenarlo como tal. 2. Puedes hacer unas separación por partes, es decir, con la función SUBSTRING extraer las dos primeras cifras de la cadena, convertirlas a numero y ordenarlas como tal, y por otro lado, extraer las últimas 4 cifras de la cadena, las conviertes a número y las ordenas como tal. Haz el intento y nos comentas si continuas con problemas Saludos Leo. |
| ||||
Respuesta: Como puedo ordernar estos datos descendentemente? Yo probaría hacer esto:
Código MySQL:
Ver original Por otro lado, ese tipo de datos (mes y año) hubiese sido conveniente guardarlos en dos columnas numéricas. Sería más fácil ordenarlo. Manteniendolo asi, otra posibilidad sería: Pero para usar esta solución los datos deberían ser siempre de seis caracteres, cumpliendo el formato "MMAAAA", con los meses siempre en dos cifras.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |
Etiquetas: |