第2个回答 推荐于2017-10-05
(7) 按部门列出在该部门工作的员工的人数;
select ft.departmentid,
ft.departmentname,
count(distinct a.employeeid) as employee_num
from departments ft
left join employees a on ft.departmentid=a.departmentid
group by ft.departmentid,ft.departmentname;
(8) 按员工的学历分组,列出本科、大专和硕士的人数;
select ft.education,
count(distinct ft.employeeid) as employee_num
from employees ft
group by ft.education;
(9) 按员工的工作年份分组,统计各个工作年份的人数,如工作1年的多少人,工作2年的多少人;
select ft.workyear,
count(distinct ft.employeeid) as employee_num
from employees ft
group by ft.workyear;
(10) 将员工信息按出生日期从小到大排序;
select ft.*
from employees ft
order by ft.birthday asc;
(11) 在order by子句中使用子查询,查询员工的姓名、性别和工龄信息,要求按实际收入从大到小排序;
select ft.name,
ft.sex,
ft.workyear
from employees ft
order by (select a.income-a.outcome from salary a where ft.employeeid=a.employeeid) ;
(12) 返回employees表中从第3位员工开始的5个员工的信息。
select * from employees limit 2,5;本回答被提问者采纳