0

Hive の case ステートメントに新しいデータ行を挿入することは可能ですか?

次のフィールド (team_id、fname、lname) を持つ基本的な「チーム」テーブルがあります。

これは私が実行しようとしているものです、

SELECT team_id,fname,lname,
CASE WHEN team_id = 2 THEN insert into team values (20, 'billy', 'bob'); ELSE "" END team_id
FROM team order by team_id;

エラー ParseException line 2:29 Failed to recognize predicate 'insert'. Failed rule: 'identifier' in table or column identifier

誰かが情報や解決策を提供できれば、それは素晴らしいことです

Frostie

4

1 に答える 1

1

Afaik では、ハイブのステートメントにddlordml操作を入れることはできません。caseただし、実際に解決する必要がある場合は、回避策を適用して上記の問題を解決できます。

insert into table team select 20, 'billy', 'bob' from team where team_id = 2;

説明:- team_id=2 の場合、チームテーブルに新しいレコードが挿入されます。それ以外の場合、挿入するものはありません。

于 2016-06-08T20:10:34.697 に答える