From: | elcotorro(at)gmail(dot)com |
---|---|
To: | Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org> |
Cc: | Jimmy Raad <jimmyraadc(at)gmail(dot)com>, Jaime Casanova <jcasanov(at)systemguards(dot)com(dot)ec>, Sebastián Villalba <sebastian(at)fcm(dot)unc(dot)edu(dot)ar>, pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] comportamiento extraño |
Date: | 2009-05-04 13:16:14 |
Message-ID: | a41f4f120905040616n30844550r58210b7da821e4bb@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
creo que el problema es que para linux el valor
del BLANCO es mayor al de los numeros y letras
y para windows es menor.
el problema es que yo necesito que el motor funcione en ambos sistemas
operativos.
otro ejemplo qeu confirma lo que digo:
create table tabla (campo character(20));
delete from tabla;
insert into tabla (campo) values ('A AA');
insert into tabla (campo) values ('A AA');
select * from tabla order by campo;
2009/5/4 <elcotorro(at)gmail(dot)com>:
> no entiendo porque se cuestiona la informacion que quiero guardar y de
> la forma en que lo hago.
> porque motivo no puedo ordenar alfanumericamente?
> yo creo que es una falla del motor.
> ya que el motor esta haciendo TRIM y nadie le ordeno eso.
>
> con ese criterio supongamos que tenemos:
> " JUAN PEREZ"
> "ALDO GOMEZ"
>
> como lo ordenas???
>
> mira este ejemplo
> create table tabla (campo character(20));
> insert into tabla (campo) values (' AAA');
> insert into tabla (campo) values ('AAA ');
> select * from tabla order by campo;
>
>
>
>
>
>
>
>
> 2009/5/3 Alvaro Herrera <alvherre(at)alvh(dot)no-ip(dot)org>:
>> elcotorro(at)gmail(dot)com escribió:
>>> Jimmy, como le decia a Sebastian, el comportamiento es extraño ya que
>>> el motor esta haciendo trim para ordenarlos cosa que no me sirbe.
>>> supongamos que quiero el valor " A1234" ..........
>>> ademas porque si el motor es en windows funciona bien y si esta en
>>> ubuntu funciona mal?
>>
>> El ordenamiento de los strings los hace el sistema operativo, y para
>> esto se usa la llamada strcoll(). Diferentes sistemas operativos actúan
>> diferente.
>>
>> Si esto realmente te complica mucho, puedes cambiar el ordenamiento
>> haciendo un initdb definiendo el locale a C, el cual hace un
>> ordenamiento comparando bytes.
>>
>> Quizás lo que necesitas es algo como ORDER BY length(btrim(columna)), columna?
>>
>> --
>> Alvaro Herrera Valdivia, Chile Geotag: -39,815 -73,257
>> "Everything that I think about is more fascinating than the crap in your head."
>> (Dogbert's interpretation of blogger philosophy)
>>
>
From | Date | Subject | |
---|---|---|---|
Next Message | elcotorro | 2009-05-04 13:32:27 | Re: [pgsql-es-ayuda] comportamiento extraño |
Previous Message | elcotorro | 2009-05-04 12:59:11 | Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] Re: [pgsql-es-ayuda] comportamiento extraño |