在PostgreSQL中处理NaN
如何处理NaN在PostgreSQL中
作为一个数值常数的NaN
可以使用值为 ‘NaN’ 的数据类型 NUMERIC。
postgres=# select 'NaN'::NUMERIC;
numeric
---------
NaN
(1 row)
postgres=#
判断NaN
只需要将’NaN’::NUMERIC与其他值进行比较即可。
postgres=# create table hoge (num1 numeric);
CREATE TABLE
postgres=# insert into hoge values('NaN'::NUMERIC);
INSERT 0 1
postgres=# select * from hoge;
num1
------
NaN
(1 row)
postgres=# select * from hoge where num1 = 'NaN'::NUMERIC;
num1
------
NaN
(1 row)
postgres=#
::即使没有数字化
可以的
postgres=# insert into hoge values('NaN');
INSERT 0 1
postgres=# select * from hoge;
num1
------
NaN
NaN
(2 rows)
postgres=# select * from hoge where num1 = 'NaN';
num1
------
NaN
NaN
(2 rows)
postgres=#
请参考
在手册中也有提到。
可以使用’无穷大’或者’负无穷大’。