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 我们不能在 hive 中的语句中放置任何ddldml操作。case但是,如果确实需要解决上述问题,可以使用变通方法来解决上述问题。

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

说明:-如果team_id=2 ,它将在团队表中插入一条新记录,否则没有可插入的内容。

于 2016-06-08T20:10:34.697 回答