PostgreSQL 中的空值排序
Postgres 依照排序順序以不同方式處理 NULL 值的排序。預設情況下,NULL 值會依升序排列到表末。但是,按降序排序的行為有所不同。
降序排序
依降序排列,NULL 值預設排序到表的頂端。為了覆寫此行為並將NULL 值排序到最後,PostgreSQL 在版本8.3 中引入了NULLS LAST 關鍵字:
ORDER BY somevalue DESC NULLS LAST
PostgreSQL 8.3 之前的版本和非標準SQL 資料庫
對於PostgreSQL 8.2 及更早版本,或其他沒有NULLS LAST功能的 RDBMS,有一個解決方法:
ORDER BY (somevalue IS NULL), somevalue DESC
這會將 NULL 值排在最後,因為 FALSE(代表 NULL)在 TRUE 之前排序。
以上是PostgreSQL 如何處理 NULL 值升序和降序排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!