Thanks everybody. The correct order in Portuguese would return as brazilian telephone guide order as below: select * from aluno order by nome id nome 38 GABRIEL ALCIDES KLIM PERONDI 40 GABRIEL ALEXANDRE DA SILVA MANICA 36 GABRIELA HELEDA DE SOUZA 37 GABRIELA JACOBY NOS 39 GABRIELA LETICIA BATISTA NUNES Indeed using POSIX, C, the result above is Ok, but it doesn't work for me because of the accented and special characters. -----Mensagem original----- De: Alvaro Herrera [mailto:alvherre@xxxxxxxxxxxxxxxxx] Enviada em: quinta-feira, 17 de agosto de 2006 11:53 Para: Erika Terahata Torres Prada e Silva - MPS Cc: pgsql-admin@xxxxxxxxxxxxxx Assunto: Re: RES: [ADMIN] Issue on Varchar Ordering Erika Terahata Torres Prada e Silva - MPS wrote: > Peter, > > Thanks for answering. > > But it's not correct to my language pt_BR and it worked correctly with > PostgreSQL at Windows and FreeBSD. I have this problem only with Debian and > now I'm looking for some Debian related issue. It's still correct -- it's the ordering you'll find on the telephone guide. It works the same for portuguese and for spanish and a lot others. The problem with going to C locale (POSIX), as suggested in a related follow-up, is that it sorts by byte value, which is not at all correct when you start sorting stuff that contains funny letters (accented vowels, etc). It works for english people just because they don't worry about accents at all. I wonder if portuguese has special sorting rules for "nh", for example? You'll lose that if you just change to the C locale. I think you _can_ define a collation on which spaces are significant, but it's also a significant amount of work. (And IMHO not at all worth the trouble.) -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support