PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Ordenação Postgres de caracteres UTF-8


Use agrupar "C":
SELECT w."translated" 
FROM "words" AS w 
ORDER BY w."translated" collate "C" desc limit 10; 

Consulte também Comportamento diferente na cláusula “order by”:Oracle vs. PostgreSQL

A consulta pode ser problemática ao usar o ORM. A solução pode ser recriar o banco de dados com o LC_COLLATE = C opção, conforme sugerido pelo OP no comentário. Há mais uma opção - altere o agrupamento para uma única coluna:
ALTER TABLE "words" ALTER COLUMN "translated" TYPE text COLLATE "C";