次のチュートリアルに基づいて、Hive にはマップ タイプがあります。SELECTただし、 UDF または組み込み関数を使用して、新しいキーと値のペアを Hive マップに挿入する方法が文書化されていないようです。これは可能ですか?
foo明確にするために、単一の列 typed map、 namedで呼び出されるテーブルがあるとしますcolumn_containing_map。
ここで、 typed という 1 つの列を持つ新しいテーブルを作成したいと考えていますが、map各マップ (単一の列に含まれる) に追加のキーと値のペアを持たせたいと考えています。
クエリは次のようになります。
CREATE TABLE IF NOT EXISTS bar AS
SELECT ADD_TO_MAP(column_containing_map, "NewKey", "NewValue")
FROM foo;
次に、テーブルにはテーブルbarと同じマップが含まれますが、foo各マップにbarは追加のキーと値のペアがあります。