我正在设计一个用户管理系统。
用户可以是经理或简单用户。如果经理登录,他应该能够看到在他下面工作的所有员工或用户。
示例:
M1 -> U1, U2, M11
and M11-> U3, U4, M12
and M12 -> U5, U6, U7
当M1登录时,他应该看到U1,U2,M11,U3,U4,M12,U5,U6,U7的数据
如果M12登录则只有U5,U6,U7。
答案 0 :(得分:0)
如果我理解你的问题,那么下面是一个样本
DECLARE @tblEmployee AS TABLE ( EmployeeId INT IDENTITY(1,1),
FName VARCHAR(100),
LName VARCHAR(100),
ManagerId INT NULL -- Reference of EmployeeId
)
您可以通过上面的表结构来完成任务,并应用 CTE 公用表表达式进行回溯。
层次结构数据类型的另一种方式是name lookup