O PostgreSQL pode conter NaN
(não um número) valor em colunas e variáveis numéricas e flutuantes: https://www.postgresql.org/docs/current/static/datatype-numeric.html#DATATYPE-FLOAT
https://dbfiddle.uk/?rdbms=postgres_10&fiddle=1fdf20510b1b6a1416754599c60fc93f
Existe uma maneira de obter NaN
diferente de inserir ou atualizar diretamente para tal valor?
Nesta questão, considerei que todos são iguais:
insert into t (v) values ('NaN');
insert into t (v) values ('N'||'a'||'N');
insert into t (v) values (E'\116\101\116');
insert into t (v) values (chr(78)||chr(65)||chr(78));
update t set v='NaN';
Eu tento coisas como:
insert into numeros (id, n1, n2) values (5, 1e306/1e-306, 1e306/1e-306); -- not representable
insert into numeros (id, n1, n2) values (6, 0/0, 1/0); -- division by 0
divida infinito por infinito.