蜂巢中的子查询和连接

时间:2016-05-11 06:23:18

标签: mapreduce hive subquery

我正在尝试连接字符串和hive中子查询的输出。它使用管道进行连接会引发错误。我的查询如下。

select id, ('hello:' || (select distinct(name) from abc c1 where c1.id=c2.id and balanc=(select max(balanc) from abc  where c1.id=c2.id)) as description from pqr c2;

下面是错误堆栈:

  

无法识别附近的输入'选择' '最大' '('在表达式规范中

我在这里很新。请帮助。

2 个答案:

答案 0 :(得分:0)

你能先指定表abc&的表结构吗? pqr?

答案 1 :(得分:0)

所以如果你想连续一个字符串&使用子查询尝试如下: SELECT id,name,balanc FROM(SELECT c1.id as id,c1.name as name,c1.balanc as balanc FROM pql c2 JOIN abc c1 WHERE c1.id = c2.id)t2;

当你在结果中返回多于1列时,不能以某种方式在子查询中使用聚合函数。如果您只想查找子查询中的最大值,可以尝试以下查询

SELECT balanc FROM(SELECT MAX(c1.balanc)as balanc FROM pql c2 JOIN abc c1 WHERE c1.id = c2.id)t2

希望这对你有所帮助..祝你好运!