问题

image.png
image.png
image.png

思路

  1. select s.*, d.dept_no
  2. FROM salaries s, dept_manager d
  3. WHERE s.emp_no = d.emp_no
  4. and s.to_date = '9999-01-01'
  5. and d.to_date = '9999-01-01'
  6. order by emp_no;
  1. /*采用inner join*/
  2. select s.*, d.dept_no
  3. from dept_manager as d inner join salaries as s
  4. on d.emp_no=s.emp_no
  5. where d.to_date='9999-01-01'
  6. and s.to_date='9999-01-01'
  7. order by emp_no;

关于为什么一定要两个表格的时间都限制成规定时间(9999-01-01)呢?

  • 因为薪水表是按年发的,而题目要查找的是当前的薪水,所以要过滤掉以前,而dept_manager是因为有领导会离职,to_date时间不一定是9999-01-01,所以要过滤过离职的领导