Ikke sikker på, hvad dit problem præcist er, eller hvordan det "ikke virker", på grund af mangel på detaljer i dit spørgsmål. Men mindst to faktorer kan påvirke sorteringen på en sådan måde, at du får forskellige resultater i MySQL og PostgreSQL.
Den første er sortering . Især hvis du spiller med 9.1 beta. Sidst jeg installerede MySQL (hvilket var et stykke tid siden, så de kunne have rettet dette siden), var det at samle tingene som latin-1/svensk som standard vs utf-8/english for PostgreSQL.
Den anden er nul. MySQL placerer altid disse sidst, hvis hukommelsen ikke fungerer. I modsætning hertil placerer PostgreSQL dem konsekvent i slutningen af btree-indekser og placerer dem således sidst ved bestilling af asc og først ved bestilling af desc. Du kan ændre denne adfærd ved at bestille at bruge nulls first/nulls last .
I dit særlige tilfælde er mit gæt, at du vil order by rating desc nulls last
, i modsætning til standardadfærden, som placerer nuller først.