Postgres har NULLS FIRST | LAST modifierare för ORDER BY uttryck:
... ORDER BY last_updated NULLS FIRST
Det typiska användningsfallet är med fallande sorteringsordning (DESC ), vilket ger den fullständiga inversionen av standard stigande ordning (ASC ) med nollvärden först - vilket ofta inte är önskvärt. För att sortera NULL värdena sist:
... ORDER BY last_updated DESC NULLS LAST
För att stödja frågan med ett index , få det att matcha:
CREATE INDEX foo_idx ON tbl (last_updated DESC NULLS LAST);
Postgres kan läsa btree-index baklänges, men för vissa frågeplaner spelar det roll var NULL värden läggs till. Se:
- Prestandans inverkan av vyn på aggregerad funktion kontra resultatuppsättningsbegränsning