SQL递归根据下拉框去获取申请人的上级
场景:
表单有下拉框,对应三个层级。
下一节点的办理人需要根据这个层级去获取申请人对应的上级。
解决思路:
用SQL公共表达式cte递归可以作为一个获取思路:
with CTE as (select lastname,id,managerid from hrmresource where id = 2422 UNION ALL select a.lastname,a.id,a.managerid from hrmresource a inner JOIN CTE b on a.id=b.managerid )select lastname,id from CTE option (maxrecursion 2)
2422是申请人ID
maxrecursion 2 哪里的2是递归层级。
刚好对应下拉框的012
他会把申请的人所有上级全部查询出来,用order by 排序,然后用top 去取