我们如何在 Hive 中实现货币转换?
How do we achieve Currency Conversion in Hive?
我想将所有员工的工资转换为美元
假设我有一个 Hive table 'emp'
id name currency_code salary_as_per_currency_code
100 Surender EUR 10
101 Raja INR 100
102 Ajay USD 5
我需要编写一个 select 查询,它应该会给我以下结果
我的预期输出是
id name currency_code salary_as_per_currency_code salary_in_USD
100 Surender EUR 10 .92
101 Raja INR 100 .496
102 Ajay USD 5
我的 table 有更多 Currency_code,例如 NZD、CAD、JPY 等等。
hive 中是否有任何通用的内置函数可以做到这一点?
请帮我提供一个可能的途径来找到这个问题的解决方案
没有可用于此转换的内置函数,但您可以在 hive 中创建自己的 UDF。参考下面link,它将指导您在 hive 中创建 UDF。
您需要做的就是在下面的块中编写您的转换逻辑,
public class currency_conversion extends UDF {
public Text evaluate(String currency_code, String salary_as_per_currency_code){
----- write your logic here---
if (currency_code.contains("INR")){
--write your conversion logic here---
}
}}
如果您有任何疑问,请告诉我。
我想将所有员工的工资转换为美元
假设我有一个 Hive table 'emp'
id name currency_code salary_as_per_currency_code
100 Surender EUR 10
101 Raja INR 100
102 Ajay USD 5
我需要编写一个 select 查询,它应该会给我以下结果
我的预期输出是
id name currency_code salary_as_per_currency_code salary_in_USD
100 Surender EUR 10 .92
101 Raja INR 100 .496
102 Ajay USD 5
我的 table 有更多 Currency_code,例如 NZD、CAD、JPY 等等。
hive 中是否有任何通用的内置函数可以做到这一点?
请帮我提供一个可能的途径来找到这个问题的解决方案
没有可用于此转换的内置函数,但您可以在 hive 中创建自己的 UDF。参考下面link,它将指导您在 hive 中创建 UDF。
您需要做的就是在下面的块中编写您的转换逻辑,
public class currency_conversion extends UDF {
public Text evaluate(String currency_code, String salary_as_per_currency_code){
----- write your logic here---
if (currency_code.contains("INR")){
--write your conversion logic here---
}
}}
如果您有任何疑问,请告诉我。