Re: Ordenar resultado por números en campo varchar

From: Rodrigo Ruiz <rruizf(at)gmail(dot)com>
To: Miguel Angel Hernandez Moreno <miguel(dot)hdz(dot)mrn(at)gmail(dot)com>
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Ordenar resultado por números en campo varchar
Date: 2010-09-30 19:42:51
Message-ID: 4CA4E83B.3080503@gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

El 30/09/2010 13:28, Miguel Angel Hernandez Moreno escribió:
> ok creo que tienes razon por que es solo para valido en numeros enteros
> puedes usar un tipo de dato ::numeric(3,2)
>
> este parse te respeta los decimales en 0
> select id,titulo,indice::numeric(3,2)as in from a order by in;
>
> y este es un parse a float
> select id,titulo,indice::float as in from a order by in;

OK, ya lo había intentado, me da el mismo orden... el problema es con
los índices de tipo '2.1.45.1' por ejemplo, como para parsearlo a float
o numeric.
Aún con indices del tipo 1.1 y 1.10 tengo el mismo orden, ya estoy liado
con este asunto.

Muchas gracias.

>
> El 30 de septiembre de 2010 11:42, Rodrigo Ruiz <rruizf(at)gmail(dot)com
> <mailto:rruizf(at)gmail(dot)com>> escribió:
>
> El 30/09/2010 12:26, Miguel Angel Hernandez Moreno escribió:
>
> haces un parseo a integer
>
> select id,titulo,indice::integer as in from tabla order by in asc
>
> [...]
>
> Gracias Miguel Angel,
> apliqué tu sugerencia a la consulta y obtengo lo siguiente:
>
> ERROR: la sintaxis de entrada no es válida para integer: «1.11»
>
>

--
Rodrigo Ruiz Fuentes

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Luis Jimenez 2010-09-30 19:43:03 Re: Problemas de instalacion de Postgresql 8.2 en Debian Lenny 64bits
Previous Message Silvio Quadri 2010-09-30 19:40:58 Re: Consulta SQL