Postgres má NULLS FIRST | LAST modifikátory pro ORDER BY výraz:
... ORDER BY last_updated NULLS FIRST
typické případ použití je s sestupným řazením (DESC ), což vytvoří úplnou inverzi výchozího vzestupného pořadí (ASC ) s nulovými hodnotami jako první – což často není žádoucí. Chcete-li seřadit NULL hodnoty poslední:
... ORDER BY last_updated DESC NULLS LAST
Pro podporu dotazu pomocí indexu , aby to odpovídalo:
CREATE INDEX foo_idx ON tbl (last_updated DESC NULLS LAST);
Postgres umí číst indexy btree pozpátku, ale u některých plánů dotazů záleží kde NULL hodnoty jsou připojeny. Viz:
- Dopad zobrazení na výkon na agregovanou funkci vs. omezení sady výsledků