Título: Problema con Order By en Consulta [MySQL + PHP] Publicado por: rootusr en 14 Julio 2008, 19:10 pm Hola a todos:
Trabajo en una aplicacion cuya base de datos en MSYQL ya habia sido creada previamente. esta aplicacion despliega en un PDF (parte resuelta) un reporte de ciertos datos ordenados en categorias por medio de un numero de registro por ejemplo: Código: COLOR ROJO Código: ...ORDER BY productos.num_product+0 el resultado que devuelve para la categoria del problema es por ejemplo: M_23, M_4, M_455, M_2 el campo que indica el numero o clave del registro se debe imprimir en el reporte. la pregunta es: ¿como logro que se ordenen de manera ascendente todos los registros impresos en el reporte incluyendo aquellos que inician con una letra? Aqui pongo un poco de infomracion Extra: La columna en cuestion es de tipo varchar la version de MySQL es la 5.X la Aplicacion esta en PHP y Utilizo FPDF para generar el reporte espero haberme explicado. desde ya muchas gracias y ojala alguien pueda darme una mano. Título: Re: Problema con Order By en Consulta [MySQL + PHP] Publicado por: Hans el Topo en 15 Julio 2008, 00:55 am no se si lo he entendido, quieres ordenarlos como si fuesen solamente números no? sin _ ni letras delante es decir:
111, m_123, 200, _210, m_222? lo que vas a tener que hacer es transformar las cadenas en números o purgar las letras (quitar cualquier caracter que no sea un número) puedes hacerlo mediante una función/procedimiento, es decir si no encuentras una función que te elimine las letras nativa a mysql tendrás que crearla tu y por si lo que te falla es lo básico: para ordenar ascendente es order by "campo o expresion" asc (por defecto toma el asc) en descendente order by "campo o expresion" desc también puedes ordenar por diferentes campos order by "campo1sin comillas" asc, "campo2sincomillas" desc |