Hive - 嵌套查询
Hive - nested query
我对 Hive 完全陌生。我能够 运行 非嵌套 SQL 查询没有问题。但是,我无法执行以下查询。
SELECT E_DATE,
CLIENT,
INS,
(SELECT SUM(time)
FROM mytable b
WHERE a.E_DATE = b.E_DATE
AND a.INS = b.INS
AND b.CLIENT = 'comA') TOTAL_TIME
FROM mytable a
GROUP BY E_DATE,CLIENT,INS
我收到错误 FAILED:ParseException 行 4:8 无法识别 'SELECT' 'SUM' '(' 在表达式规范
附近的输入
select E_DATE,CLIENT,INS,SUM(time)
from mytable
where CLIENT = 'comA'
group by E_DATE,CLIENT,INS;
或
select a.E_DATE,a.CLIENT,a.INS,SUM(b.time)
from mytable a JOIN mytable b ON (a.E_DATE = b.E_DATE AND a.INS = b.INS)
where b.CLIENT = 'comA'
group by a.E_DATE,a.CLIENT,a.INS;
如果您在 sql 中有嵌套查询,那么在 Hive 中您必须进行连接才能获得结果。
我对 Hive 完全陌生。我能够 运行 非嵌套 SQL 查询没有问题。但是,我无法执行以下查询。
SELECT E_DATE,
CLIENT,
INS,
(SELECT SUM(time)
FROM mytable b
WHERE a.E_DATE = b.E_DATE
AND a.INS = b.INS
AND b.CLIENT = 'comA') TOTAL_TIME
FROM mytable a
GROUP BY E_DATE,CLIENT,INS
我收到错误 FAILED:ParseException 行 4:8 无法识别 'SELECT' 'SUM' '(' 在表达式规范
附近的输入select E_DATE,CLIENT,INS,SUM(time)
from mytable
where CLIENT = 'comA'
group by E_DATE,CLIENT,INS;
或
select a.E_DATE,a.CLIENT,a.INS,SUM(b.time)
from mytable a JOIN mytable b ON (a.E_DATE = b.E_DATE AND a.INS = b.INS)
where b.CLIENT = 'comA'
group by a.E_DATE,a.CLIENT,a.INS;
如果您在 sql 中有嵌套查询,那么在 Hive 中您必须进行连接才能获得结果。