2014-09-30 795 views
3

我有两个具有相似字段的表,但查询失败时,我在WHERE子句中执行SELECT子查询。WHERE子句中的HIVE SQL子查询

SELECT foo 
FROM bar 
WHERE fizz IN (SELECT fizz FROM fuzz) 

我删除了AWS的error.log但错误是东西的HIVE不承认SELECT的程度。

我该如何重构此查询?

谢谢。

回答

4

HIVE Language Manual的WHERE子句部分的子查询:

SELECT b.foo FROM bar b WHERE b.fizz IN (SELECT f.fizz FROM fuzz f) 
+3

基本上,你有相同的名称列,它很困惑哪一列返回。 – 2014-09-30 15:31:06

+0

谢谢@MylesBaker – user2715877 2014-09-30 15:42:18

+0

@ user2715877如果这适用于您,请选择它作为您的问题的答案。 – 2014-09-30 15:48:13

0

蜂巢与子查询问题的WHERE子句中使用JOIN

SELECT foo FROM bar 
JOIN fuzz 
ON bar.fizz=fuzz.fizz 
+0

你已经改变了表名与列名;-) – 2014-09-30 15:37:05

+0

@JoëlSalamin谢谢我只是编辑,太多模糊fizz – Mihai 2014-09-30 15:37:22

+0

任何评论或只是一个无赖downvote? – Mihai 2014-09-30 15:38:50

0

蜂房不支持,EXISTS或WHERE子句中的子查询。去交叉加入...