SQL 获取所有上级的实现方法
SQL获取所有上级的实现方法
说明:
(1)可以做成一个函数,直接调用即可;
(2)M0Org是数据库存在的表,M0OrgPID为目标表,OrgID为ID字段,PID为上级ID字段
DECLARE@OrgIDNVARCHAR(36)='00000000-0000-0000-00000002205223459'; --获取当前机构的所有上级放入M0OrgPID WITHM0OrgPID AS(SELECT*,0ASlvl FROMM0Org WHEREOrgID=@OrgID UNIONALL SELECTd.*,lvl+1 FROMM0OrgPIDc INNERJOINM0OrgdONc.PID=d.OrgID) SELECT*FROMM0OrgPID;
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!