HiveはIF(条件、式、式)を使用するため、if/else if/else if/elseを実行する場合は、次の手順を実行する必要があります。
IF(a, 1, IF(b, 2, IF(c, 3, 4)))
より読みやすいこれを行うより良い方法はありますか?
標準に似たものを探している
if (a) {
1
} else if (b) {
2
} else if (c) {
3
} else {
4
}
Hive Conditional CASE WHEN
if-elseシナリオの関数。 CASE Statement
は、同じ機能でより読みやすくなります。
CASE
WHEN (condition1) THEN result1
WHEN (condition2) THEN result2
WHEN (condition3) THEN result3
WHEN (condition4) THEN result4
ELSE result_default
END AS attribute_name
特定の列にカスタムUDFを書くことが他の場合に対処する最良の方法です。