SubQuery在IMPALA中工作,但不在HIVE中工作

问题描述 投票:1回答:1

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

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

编辑:

添加了错误

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

hadoop hive impala
1个回答
0
投票

问题可能是因为主查询和内部子查询中的两个查询中都存在“标识符”。明确提到您所指的“标识符”如'mytable.identifier'应该可以解决此问题。

这可能是Hive的一个问题,已在最近的版本中得到修复,并且问题未在hive 3.1.0中重现。

如果您仍然遇到此问题,请告诉我们您正在使用的hive版本以及用于创建表的DDL语句。

© www.soinside.com 2019 - 2024. All rights reserved.