【发布时间】:2019-10-03 03:20:40
【问题描述】:
我在 hive 数据库中有一个 HR 表,其中包含不同的列,其中两个是部门和 number_of_projects。我需要查找的查询是“哪个部门的项目总数大于整体项目的10%”
我写的代码如下:
SELECT department,
SUM(Number_Of_projects) as total_projects_dep
FROM Hr
GROUP BY department
HAVING SUM(Number_Of_projects) > (SELECT CAST(0.1*SUM(Number_Of_projects)AS INT) FROM hr);
hive 抛出以下错误:
失败:ParseException 行 1:126 无法识别“SELECT”附近的输入 'CAST' '(' 在表达式规范中
我在 mysql 中执行的相同查询,它工作正常并给出正确的结果。而 hive 不接受查询之间的大于符号。
有人可以指导我如何更改上述查询以在 hive 中工作。
【问题讨论】: