我想将varchar转换为十进制值
当我使用
时try_cast(unitPrice as decimal) as price_value
我收到错误无法输出到文件。值不是数字:java.lang.String
然而,当我使用
时try_cast(unitPrice as integer ) as price_value
我收到十进制值的空值
导致此错误的原因是什么?
答案 0 :(得分:1)
Oracle具有以下数字数据类型:
{NUMBER [(precision [,scale])] | FLOAT [(精度)] | BINARY_FLOAT | BINARY_DOUBLE }
https://docs.oracle.com/cd/B28359_01/server.111/b28285/sqlqr06.htm#g999425
所以你应该尝试像
这样的东西cast(unitPrice as float) as price_value