Spark分组函数嵌套与子查询应用示例
本节将演示如何在Spark SQL中进行分组函数嵌套和子查询操作。
1. 嵌套分组函数
- 查询各部门平均工资的最大值:
sql SELECT MAX(AVG(sal)) FROM emp GROUP BY deptno;
2. 分组统计与条件筛选
-
计算各部门工资高于500的员工的平均工资:
sql
SELECT deptno, AVG(sal) AS avg_salary
FROM emp
WHERE sal > 500
GROUP BY deptno;
-
查询平均工资大于500的部门信息:
sql
SELECT deptno, AVG(sal) AS avg_salary
FROM emp
GROUP BY deptno
HAVING avg_salary > 500;
3. 子查询应用
-
查询部门30中获得最高奖金的员工的奖金金额:
sql
SELECT MAX(comm) FROM emp WHERE deptno = 30;
-
查询部门30中获得最高奖金的员工姓名:
sql
SELECT ename
FROM emp
WHERE comm = (SELECT MAX(comm) FROM emp WHERE deptno = 30);
4. 分组统计与聚合函数结合
- 查询每个职位的员工数量和最低工资:
sql SELECT job, COUNT(*) AS employee_count, MIN(sal) AS min_salary FROM emp GROUP BY job;
暂无评论