Ответ 1
Прежде всего значения NULL сортируются в порядке возрастания по умолчанию. Вам не нужно ничего делать.
Проблема относится к порядку убыванию, который является идеальным обратным и, таким образом, сначала сортирует значения NULL. решение @Mosty указано, было представлено с PostgreSQL 8.3:
ORDER BY somevalue DESC NULLS LAST
Для PostgreSQL 8.2 и более старых или других СУБД без этой стандартной функции SQL вы можете заменить:
ORDER BY (somevalue IS NULL), somevalue DESC
FALSE
сортирует перед TRUE
, поэтому значения NULL являются последними, как в приведенном выше примере.
Следующий ответ: