有两张表 部门表A 部门id 部门名称 , ;人员表B 人员姓名 ,人员编号 ,入职日期
如何查询每个部门第二个入职的人员 通过部门id(dept_id)关联 显示如下
部门名称、员工编号、员工姓名、入职日期
题主要的代码如下
select d.部门名称,t.人员编号,t.人员姓名,t.入职日期
from(
select *,ROW_NUMBER() over(partition by dept_id order by 入职日期) rn from 人员表
)t
left join 部门表 d on d.部门id=t.dept_id
where t.rn=2
可以先进行表连接
然后通过窗口函数
row_nunber() over(partition by 部门 order by 入职时间)
找到排序等于2的
select top 2 部门名称、员工编号、员工姓名、入职日期
from A a
join B b on a.id = b.dept_id
order by 入职时间
是mysql数据库,还是sql server数据库?
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!