我在 postgres 中有一个数据库,在几列(类型为 int)中我有 NaN 值。当我对 ASC 进行排序时,结果是正确的,例如:
0
1
2
3
4
NaN
但是当我对 DESC 进行排序时,我得到了:
naN
4
3
2
1
0
我知道 Postgres 将 NaN 值视为相等且大于所有非 NaN 值,但有没有办法获得此结果?
4
3
2
1
0
NaN
有什么想法吗?
最佳答案
如果您的列不包含 NULL
,您可以明确地将 NaN 转换为 NULL 并对其进行排序:
select *
from some_table
order by nullif(some_column, 'NaN') desc nulls last
关于sql - 具有 NaN 值的 Postgres 排序列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48725372/