Postgres har NULLS FIRST | LAST
modifikatorer for ORDER BY
udtryk:
... ORDER BY last_updated NULLS FIRST
Den typiske use case er med faldende sorteringsrækkefølge (DESC
), som producerer den fuldstændige inversion af standard stigende rækkefølge (ASC
) med null-værdier først - hvilket ofte ikke er ønskeligt. For at sortere NULL
værdier sidste:
... ORDER BY last_updated DESC NULLS LAST
For at understøtte forespørgslen med et indeks , få det til at matche:
CREATE INDEX foo_idx ON tbl (last_updated DESC NULLS LAST);
Postgres kan læse btree-indekser baglæns, men for nogle forespørgselsplaner er det vigtigt, hvor NULL
værdier er tilføjet. Se:
- Ydeevnepåvirkning af visning på aggregeret funktion vs. begrænsning af resultatsæt