2016-10-26 3 views
2

は私が私に以下の結果を与える必要があります選択クエリを記述する必要があり、私はハイブテーブル「EMP」Hiveで通貨換算を達成するにはどうすればよいですか?私はUSD</p> <p>に全従業員の給料を変換したい

id name  currency_code salary_as_per_currency_code 
100 Surender EUR    10 
101 Raja  INR    100 
102 Ajay  USD    5 

を考えてみましょう

私の予想出力は

id name  currency_code salary_as_per_currency_code  salary_in_USD 
100 Surender EUR    10        $10.92 
101 Raja  INR    100        $1.496         
102 Ajay  USD    5        $5 

私のテーブルは、NZD、CAD、円およびすべてのような、よりCURRENCY_CODEを持っています。

これを行うためにハイブに組み込み関数が組み込まれていますか?

あり、この変換のために利用可能な組み込み関数はありませんが、あなたはハイブで独自のUDFを作成することができ、この

答えて

1

のための解決策を見つけるために私に可能ルートを与えることに私を助けてください。ハイブでUDFを作成する方法については、以下のリンクを参照してください。

UDF tutorial

すべてを行う必要がある

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--- 
    } 
}} 

任意のクエリは、あなたが持っている場合は、私に教えてください、以下のブロックでコンバージョンロジックを記述することです。

関連する問題