haces un parseo a integer select id,titulo,indice::integer as in from tabla order by in asc
El 30 de septiembre de 2010 11:22, Rodrigo Ruiz <[email protected]> escribió: > Estimados, > la siguiente representa parte del resultado de una consulta sobre una tabla > y que se ordena por el campo 'indice' de forma ascendente. > > # select * from tabla order by indice asc; > > id | titulo | indice > ----+----------+-------- > 106 | texto 4 | 1.1 > 115 | texto 13 | 1.10 > 116 | texto 1 | 1.11 > 107 | texto 5 | 1.2 > 108 | texto 6 | 1.3 > 109 | texto 7 | 1.4 > 110 | texto 8 | 1.5 > 111 | texto 9 | 1.6 > 112 | texto 10 | 1.7 > 113 | texto 11 | 1.8 > 114 | texto 12 | 1.9 > 117 | texto 2 | 2.1 > 118 | texto 3 | 2.2 > > El campo indice es un varchar, si notan, luego del punto 1.1 salta al 1.10, > el cual necesito se presente siguiendo al punto 1.9. > Intenté pasando el campo a numérico con cast, sin embargo se me complicó, > pues podrían existir puntos del tipo 1.2.6 o más detallado aún. > La pregunta ya la podrán adivinar, cómo podría obtener el resultado de la > consulta de manera ordenada por índice? > > Saludos cordiales.- > > -- > Rodrigo Ruiz Fuentes > - > Enviado a la lista de correo pgsql-es-ayuda ([email protected] > ) > Para cambiar tu suscripción: > http://www.postgresql.org/mailpref/pgsql-es-ayuda >
