部门表TebleDept
DeptID DeptName,UpDept
员工表TableUser
UserID,UserName,DeptID
如A部门的 5个员工,又有100个子部门
每个部门又有各自的员工和子部门我想取其中的一个部门有员工的UserID这类的(包括本部门的直接员工ID和子部门的所有员工ID)有什么好方面呢
用delphi 如何实现呢
DeptID DeptName,UpDept
员工表TableUser
UserID,UserName,DeptID
如A部门的 5个员工,又有100个子部门
每个部门又有各自的员工和子部门我想取其中的一个部门有员工的UserID这类的(包括本部门的直接员工ID和子部门的所有员工ID)有什么好方面呢
用delphi 如何实现呢
(select username,deptid from tableuser a join tabledept b
on a.deptid=b.deptid
where b.deptid in(select deptid from tabledept where deptname='部门'))
union all
(select username,deptid from tableuser
where deptid in(select deptid from tabledept where deptname='部门'))c
select * from tableuser where deptid in (select DeptID from tabledept where DeptID = 'XXXXX' or UpDept = 'XXXXX')
当然,你得保证在部门信息表里你的UpDept是与上次部门有关联的。
如一组部门业务部 01
下级部门 业务一组 01001
下级部门
业务一班 010010001
业务二班 010010002
业务二组 01002
如查询业务部门的员工“select TableUser where Deptid Like ''01%'''
如查询业务一组的员工 “select TableUser where Deptid Like ''01001%'''