我想从数据库中找到5个收入最高的人,此外,当前必须雇用雇员。
我尝试这样做,但没有成功。
SELECT
employees.first_name, employees.last_name, salaries.salary
FROM
employees
INNER JOIN
salaries ON employees.emp_no = salaries.emp_no
WHERE
(SELECT MAX(salaries.salary)
FROM salaries.salary
WHERE salaries.to_date > '2018-07-10')
LIMIT 5;
预先感谢您的帮助
答案 0 :(得分:2)
您不需要使用subquery
:
select e.first_name, e.last_name, s.salary
from employees e inner join
salaries s
on s.emp_no = e.emp_no
where s.to_date > '2018-07-10' -- this seems incorrect to me needs to correct
order by s.salary desc
limit 5;
答案 1 :(得分:0)
尝试一下。
SELECT TOP 5
employees.first_name, employees.last_name, salaries.salary
FROM
employees
INNER JOIN
salaries ON employees.emp_no = salaries.emp_no
ORDER BY
salaries.salary DESC