我试图参数化配置单元中的值,而不是在查询中对其进行硬编码。以下是查询。
select * from employee where sal >30000
但是我需要将其来自如下相同的查询,而不是使用硬编码的 30000 值。但我遇到了问题:
select * from employee where sal > (select max(sal) from employee)
感谢任何帮助。
谢谢
最佳答案
您可以尝试使用这种形式的 Hive 查询。这将使员工的工资等于最高工资。
SELECT e1.* FROM employee e1
JOIN
(SELECT MAX(sal) as max_sal FROM employee) e2
ON e1.sal = e2.max_sal;
示例:
Table: employee
id fname sal
1 AAA 15000
2 BBB 35000
3 CCC 12000
4 DDD 35000
5 EEE 9000
查询执行输出:
2 BBB 35000
4 DDD 35000
关于hive - 从hive中的子查询中获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56447957/