如何将字符串转换为双精度或小数?在 Exact Online (REST API) 中,我尝试使用字符串字段中的十进制值进行计算。例如items.netprice + items.notes
。该字段items.notes
包含十进制值。尝试将cast
and与andconvert
结合使用。float
decimal
问问题
40 次
1 回答
1
我会使用如下解决方案:
select case
when regexp_replace(c, '[^0-9.]', '', 1, 0, 'g') = c
then to_number(c)
else null
end
from ( select '123.45' c
from dual@datadictionary
union all
select '123invalid.45' c
from dual@datadictionary
)
case
withregexp_replace
确保非数字返回为空。如果认为有必要,您可能希望将其更改为错误。
于 2017-07-14T08:38:21.053 回答