如何将字符串转换为double或decimal?在Exact Online(REST API)中,我尝试使用字符串字段中的小数值进行计算。例如items.netprice + items.notes
。字段items.notes
包含小数值。
使用cast
和convert
与float
和decimal
结合使用。
答案 0 :(得分: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
regexp_replace
确保非数字返回为null。如果认为有必要,您可能希望将其更改为错误。