estaba usando collate C, debido a que si no lo pongo, el ordenamiento queda
asiALVARES
DE LA CRUZ
DELGADODE TRINIDAD FONSECAMENDOZA
Debiendo estar los q marque en negristas, juntos. al usar es_AR los deja de la
manera anterior
Eveling Velasquez
El Jueves, 30 de junio, 2016 10:32:59, Eveling Velásquez
<[email protected]> escribió:
Centos 7Version PG 9.5client_encoding UTF8server_encoding UTF8lc_collate
en_US.UTF-8lc_ctype en_US.UTF-8el tipo de dato de la columna es character
varying
Use collate "es_AR" y el orden es el misno, la Ñ al final no despues d la N
Eveling Velasquez
El Jueves, 30 de junio, 2016 9:54:51, Gerardo Herzig <[email protected]>
escribió:
>
> Buen dia
> Necesito hacer un ordenamiento como el siguiente:
>
>
> ALVARES
> DE LA CRUZ
> DE TRINIDAD
> FONSECA
> MENDOZA
> NORORI
> ÑURINDA
> OSORIO
>
>
> hago un order by collate "C" y el resultado es
>
>
>
> ALVARES
> DE LA CRUZ
> DE TRINIDAD
> FONSECA
> MENDOZA
> NORORI
> OSORIO
>
> ÑURINDA
>
>
>
> quedando la letra Ñ al final, debiendo quedar después de la N
Si, es el comportamiento esperado para la Collation "C" (de acuerdo a las docs):
"""
On all platforms, the collations named default, C, and POSIX are available.
Additional collations may be available depending on operating system support.
The default collation selects the LC_COLLATE and LC_CTYPE values specified at
database creation time. The C and POSIX collations both specify "traditional C"
behavior, in which only the ASCII letters "A" through "Z" are treated as
letters, and sorting is done strictly by character code byte values.
"""
Tenes que especificar una collation que respete las normas de ordenamiento
correspondiente a tu idioma:
postgres=# with apellidos (apellido) as (values ('ALVARES'),
('DE LA CRUZ'),
('DE TRINIDAD'),
('FONSECA'),
('MENDOZA'),
('NORORI'),
('OSORIO'),
('ÑURINDA')
)
select * from apellidos order by apellido collate "es_AR";
apellido
-------------
ALVARES
DE LA CRUZ
DE TRINIDAD
FONSECA
MENDOZA
NORORI
ÑURINDA
OSORIO
(8 filas)
Por cierto, por que usas collation "C"? Cual es la default collation para la
base en la que estas trabajando?
Gerardo
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�:
http://www.postgresql.org/mailpref/pgsql-es-ayuda