我使用的是hive0.13,表中的字符串列中有1.250,99这样的值
我想将这些值转换成十进制,所以我必须将“.”替换为“.”和“.”。结果将是1250.99这是我的hql语句:
cast(regexp_replace(regexp_replace(price, '\\.',''), ',','.') as decimal(18,6))
但是它返回null,我想是因为转换没有成功。有什么问题?
如果不进行转换,它将返回预期的字符串。
更新
我的问题是列中有空格,所以它无法将其转换为十进制值。在转换之前,我已经使用了trim函数。
1条答案
按热度按时间x759pob21#
试试这个: