利用SQL查找某企业最晚入职员工的所有信息(题解)
查找某企业最晚入职员工的所有信息
select * from employees where hire_date = (select max(hire_date) from employees) 或者
select * from employees order by hire_date desc limit 0,1/limit 1
(注:limit用法----limit跟两个参数arg1、arg2,arg1表示从哪行开始取、缺省值是0,arg2表示取几行、不可取负值)
查找某企业员工入职时间排倒数第三的员工所有信息(limit 练习)
select * from employees order by hire_date desc limit 2,1
查找各个部门当前(to_date='9999-01-01')领导当前薪水详情以及其对应部门编号dept_no
select s.*, d.dept_no from salaries s, dept_manager d where s.to_date = '9999-01-01' and d.to_date = '9999-01-01' and s.emp_no = d.emp_no?? 或者
查找所有员工的last_name和first_name以及对应部门编号dept_no,也包括展示没有分配具体部门的员工:
因为最后需要显示部门号为NULL的员工,所有这里需要用左外连接或者右外连接(这里也是join和where相比的一种适用场景)
-- select e.last_name, e.first_name, d.dept_no from employees e, dept_emp d where e.emp_no = d.emp_no
select e.last_name, e.first_name, d.dept_no from employees e left join dept_emp d on e.emp_no = d.emp_no