尝试在配置单元中使用如下所示的子查询运行此查询:
select y,m,d,h from A where d not in (select d from B)
我得到一个错误 "only subquery expressions that are top level conjuncts are allowed" 有人知道这意味着什么,以及如何绕过它吗?提前谢谢!
"only subquery expressions that are top level conjuncts are allowed"
irtuqstp1#
我假设您使用的是<0.13的配置单元版本。有些子查询表达式是不允许的,这就是其中之一。改为尝试左外连接:
SELECT A.y, A.m, A.d, A.h FROM A LEFT OUTER JOIN B ON A.d = B.d WHERE B.d IS NULL;
如果您移动到Hive0.13,您应该可以这样使用它:
SELECT A.y, A.m, A.d, A.h FROM A WHERE A.d NOT IN (SELECT d FROM B);
1条答案
按热度按时间irtuqstp1#
我假设您使用的是<0.13的配置单元版本。有些子查询表达式是不允许的,这就是其中之一。改为尝试左外连接:
如果您移动到Hive0.13,您应该可以这样使用它: