如何从Hive中的字段中删除美元符号($)?

时间:2015-02-15 16:57:30

标签: csv hive

我正在尝试将csv导入Hive。我有一个美元值的列,并在CSV中报告为“$ 123,244.00”。我想将此值转换为Hive中的float。

所以我将csv加载到临时表中,将该列视为字符串。接下来我想将它加载到最终表中,并在此过程中将该字符串转换为float或decimal。

有关最佳方法的任何建议吗?

1 个答案:

答案 0 :(得分:1)

这应该有效:

select float(regexp_replace(substr('$123,244.00', 2, length('$123,244.00')), ',', '')) from table;

您需要删除任何逗号以及美元符号。您可能会发现此链接也很有用:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-NumericTypes