我想在Oracle Express中的SQL中使用子查询来获取员工在其部门中获得的最高薪水的salary_id。我有这些表格是:Oracle SQL中的子查询
Employee
Emp_id Salary Dept_id
100 1000 a101
200 2000 a101
300 2500 b102
Salary
Grade LowSal HiSal
1 500 900
2 901 2000
3 2001 3000
首先,我提取出的最高薪水在此查询各部门:
SELECT Max(e.SALARY)
FROM EMPLOYEE e
GROUP BY e.DEPT_ID
的结果是两个记录:2000年和2500
下一步是要得到这些工资的等级,所以我使用以下内容:
SELECT GRADE
FROM SALARY
WHERE (SELECT Max(e.SALARY)
FROM EMPLOYEE e
GROUP BY e.DEPT_ID) BETWEEN LOWSAL AND HIGHSAL;
错误tha t我收到的是:ORA-01427:单行子查询返回多个行
如何在SQL中使用子查询执行该SQL命令?
工资表如何链接到员工表?连接在哪里? –