sql >> Databasteknik >  >> RDS >> PostgreSQL

Postgres-ordning av UTF-8-tecken

Använd sortera "C":

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

Se även Annorlunda beteende i "order by"-satsen:Oracle vs. PostgreSQL

Frågan kan vara problematisk när du använder ORM. Lösningen kan vara att återskapa databasen med LC_COLLATE = C alternativ, som föreslås av OP i kommentaren. Det finns ytterligare ett alternativ - ändra sorteringen för en enskild kolumn:

ALTER TABLE "words" ALTER COLUMN "translated" TYPE text COLLATE "C";



  1. Array av sammansatt typ som lagrad procedurinmatning som skickas av C# Npgsql

  2. MySQL större än eller lika med operatören ignorerar sin eller lika med skyldighet

  3. pyodbc.connect() fungerar, men inte sqlalchemy.create_engine().connect()

  4. Ta bort med vänster yttre koppling i Postgres