From: | "Juan Luis Echeverria" <juanluise(at)usa(dot)net> |
---|---|
To: | "Jaime Casanova" <systemguards(at)gmail(dot)com> |
Cc: | <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: que "locale" debo usar ?? |
Date: | 2006-05-10 18:30:17 |
Message-ID: | 585keJsER6480S30.1147285817@cmsweb30.cms.usa.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Ok Jaime, aprecio una parte de tus sugerencias, pero creo que necesito
explicar mejor mi problema:
1. Sucede que estoy usando una herramienta CASE para generar mis reportes y
dicha herramienta crea las sentencias SQL, además no tengo acceso a ellas de
una forma viable... asi que deduce porque antes de "complicarme por gusto" no
use algo trivial como "order by lower(campo) ".
2. El problema de ordenamiento que explique antes lo he probado en PG 8.1
sobre un WIN XP haciendo un query (no usando la herramienta CASE) sin usar la
funcion lower y ... funciona como yo necesito que funcione es decir, primero
minúsculas y después mayúsculas (PG_CONTROLDATA arroja LC_TYPE y LC_COLLATE
= Spanish_Guatemala.28592).
Alguien tiene idea de que es lo que debo de cambiar (en Postgres sobre
FreeBSD) para que pueda ordenar de minúsculas a mayúsculas sin usar la
función lower ?? en lo poco que se sospecho que no he puesto el valor
adecuado en la subcategoría LC_TYPE que es la que entiendo que determina la
clasificación de los caracteres, pero si es asi, no se que valor poner.
Gracias por la ayuda que me puedan dar.
------ Original Message ------
Received: 08/05/2006 10:25 PM CST
From: "Jaime Casanova" <systemguards(at)gmail(dot)com>
To: "Juan Luis Echeverria" <juanluise(at)usa(dot)net>Cc:
pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: [pgsql-es-ayuda] que "locale" debo usar ??
On 5/8/06, Juan Luis Echeverria <juanluise(at)usa(dot)net> wrote:
> Hola foro
>
> Tengo el problema de que al ordenar una tabla por un campo char me esta
> poniendo al final los strings que empiezan con minuscula, es decir, ordena
> asi:
> Carranza
> Cifuentes
> castillo
> cuando lo correcto deberia ser:
> Carranza
> castillo
> Cifuentes
> y lo que hecho es probar con diferentes categorias de los "locale's" que
tiene
> el SO (FreeBSD 6) en que tengo la BD (PG 8.1) al crear el cluster. Asi, he
> usado la_LN.ISO8859-1, la_LN.ISO8859-15, la_LN.ISO8859-2, la_LN.ISO8859-4
para
> las categorias de locale LC_COLLATE y LC_CTYPE al hacer initdb, pero no
logro
> que ordene como quiero (las categorias es_ES.ISO8859-1 es_ES.ISO8859-15,
> es_ES.UTF-8 me resultan peor). El "locale" del SO arroja "C" para todas
> LC_COLLATE y LC_CTYPE. El encoding que he usado para la BD es LATIN2. Puede
> alguien indicarme cual es el locale que deberia usar ?? El initdb que hago
es
> asi
> initdb -D [directorio] --lc-collate=la_LN.ISO8859-15
> --lc-ctype=la_LN.ISO8859-15 -E LATIN2 -U [usuario] -W
>
antes de ponerte a cambiar lo que no conoces y complicarte por gusto
deberias tratar de entender cual es el problema...
todo lo que necesitabas era ordenar indistintamente de mayuscalas y
minusculas
ORDER BY lower(campo)
> soy nuevo en Postgres (y tambien en FreeBSD...) por lo que al menos quiero
> saber si ya hice lo correcto en Postgres para entonces empezar a investigar
> sobre FreeBSD la causa de mi problema.
> gracias por su ayuda..
>
> Juan Luis Echeverria
> juanluise(at)usa(dot)net
> ---------------------------
--
Atentamente,
Jaime Casanova
"Programming today is a race between software engineers striving to
build bigger and better idiot-proof programs and the universe trying
to produce bigger and better idiots.
So far, the universe is winning."
Richard Cook
Juan Luis Echeverria
juanluise(at)usa(dot)net
---------------------------
From | Date | Subject | |
---|---|---|---|
Next Message | Andrea | 2006-05-10 18:47:09 | Re: tablespace usando muchos discos |
Previous Message | Miguel Ortega | 2006-05-10 17:51:39 | Backup Diferencial [Again] |