SubQuery在IMPALA中有效,但在HIVE中无效

时间:2019-02-28 19:01:18

标签: hadoop hive impala

我试图理解为什么以下子查询将在Impala中而不是在Hive中工作。

    select * from MySchema.MyTable where identifier not in 
     (select identifier from schema.table where status_code in (1,2,3));

编辑:

添加了错误

  

编译语句时出错:失败:SemanticException [错误   10249]:第1:55行不受支持的子查询表达式“标识符”:   关联表达式不能包含不合格的列引用。

1 个答案:

答案 0 :(得分:0)

问题可能是由于主查询和内部子查询中的两个查询都包含“标识符”。明确提及您所指的“标识符”(例如“ mytable.identifier”)可以解决此问题。

这可能是Hive的问题,该问题已在最新版本中修复,并且在Hive 3.1.0中未复制。

如果您仍然遇到问题,请告知我们您正在使用的配置单元版本以及用于创建表的DDL语句。