Hive は条件文をサポートしています - https://cwiki.apache.org/Hive/languagemanual-udf.html#LanguageManualUDF-ConditionalFunctions
ただし、ブロック条件ステートメントを使用したいと考えています。たとえば、似たような列を持つ 2 つのテーブル A と B があります (ただし、列名は同じではありません)。B が優先されるように、A と B から新しいテーブルを作成したいと考えています。したがって、行が B に存在する場合は B から選択し、そうでない場合は A から行を選択します。
SELECT
IF (B.id<>NULL,
(B.id as id,
B.value1 as value),
(A.id as id,
a.value2 as value))
FROM A FULL OUTER JOIN B ON (A.id = B.id)
上記のクエリは機能しません。Hive がブロック条件ステートメントをサポートしていないためですか? 上記の機能を実装するにはどうすればよいですか?