Сравнение значений bigint в pgsql - PullRequest
1 голос
/ 08 января 2020

У меня проблема с преобразованием символа (20) в bigint и проверкой диапазона, например, в предложении where, которое у меня есть:

where k.broj::bigint  >= 402099 and k.broj::bigint <= 4020991112649 

, это дает мне ошибку

ERROR:  invalid input syntax for integer: ""
********** Error **********

ERROR: invalid input syntax for integer: ""
SQL state: 22P02

1 Ответ

1 голос
/ 08 января 2020

Пустая строка не является допустимым числом, вам нужно преобразовать его в ноль, например,

where nullif(k.broj,'')::bigint >= 402099 
  and nullif(k.broj,'')::bigint <= 4020991112649 
...