我有两个表,EMP
并且Salary
在EMP
表中我有以下字段:
id, emp_name,designation
在Salary
桌子上,我有以下字段:
id, emp_id, salary
如何获取工资大于 15000 的员工姓名?
我有两个表,EMP
并且Salary
在EMP
表中我有以下字段:
id, emp_name,designation
在Salary
桌子上,我有以下字段:
id, emp_id, salary
如何获取工资大于 15000 的员工姓名?
使用JOIN
和WHERE
子句
SELECT emp_name
FROM EMP
JOIN Salary
ON EMP.id = Salary.emp_id
WHERE salary > 15000
您可以使用内部查询,如下所示:
SELECT emp_name
FROM emp
WHERE id IN (SELECT emp_id FROM salary WHERE salary > 15000)
这是作业吗?我只会给你必要的提示,而不是完整的声明:
工资本身是一张表的原因是员工可以有多个工资。(否则薪水将只是 emp 表中的一个字段)。
所以首先加入emp和salary来获取所有员工的所有薪水。然后按员工分组,得到每个员工的工资总和。然后最后将您的结果过滤为超过 15000 的薪水。您是否已经知道如何过滤组结果?
编写正确语句的方法不止一种。我相信你会使用给出的提示找到一个。祝你好运!