我有一个postgres函数,其参数为double precision。有时我想从服务器端[Double.MinValue] c#代码中传递double的最小值。 现在我面临以下问题
-179769313486232000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000 超出了双精度类型的范围
双精度参数的输入是Double.MinValue。
功能如下
CREATE OR REPLACE FUNCTION public.insert_double_value(
strtidx double precision,
endidx double precision)
// other logic goes below
有什么办法可以解决此问题?
答案 0 :(得分:1)
当double precision
值转换为字符串时,问题很可能是舍入错误。
改为通过'-infinity'
。这是一个明确定义的double precision
值,可能会更好地表达您的意图。