Percebi q mesmo q o banco esteja com o encoding / charset correto para caracteres acentuados a ordenação não fica correta.
Ex.: Imaginem uma tabela com os registros: ‘a’, ‘à’ e ‘b’ se eu fizer:
select * from tabela order by campo
aparece na seguinte ordem: ‘a’, ‘b’ e ‘à’.
Percebi isto no SQL Server e no PostGreSQL.
Vi q no PostGreSQL existe a função translate onde posso fazer o seguinte comando abaixo para obter o resultado certo:
select * from tabela order by translate(campo, ‘âãá’, ‘aaa’)
A pergunta é: existe uma forma prática via Hibernate para obter o resultado na ordem alfabética correta? Ou, existe mais alguma coisa a ser feita no banco de dados (qq um) para ter o resultado certo?
Obrigado.