克服 NULL 降序排序的缺失
在 PostgreSQL 中,将具有 NULL 值的行排序到表末尾可能具有挑战性使用降序排列时。
默认行为
默认情况下,NULL 值按升序排序到表的末尾。但是,当按降序排序时,会发生相反的情况,并且 NULL 值出现在结果的开头。
PostgreSQL 8.3 的 NULLS LAST
PostgreSQL 8.3 引入了NULLS LAST 子句,允许您显式指定 NULL 值应按降序排列在最后。语法为:
ORDER BY somevalue DESC NULLS LAST
旧版本的替代方法
对于早期版本的 PostgreSQL 或其他没有标准 SQL NULLS LAST 语法的 RDBMS,您可以使用以下解决方法:
ORDER BY (somevalue IS NULL), somevalue DESC
由于 FALSE 在 TRUE、NULL 值之前排序(评估为 FALSE)将按降序排列在最后。
以上是如何在 PostgreSQL 中将 NULL 值按降序排列在最后?的详细内容。更多信息请关注PHP中文网其他相关文章!