;with t as (
select 机构名称,机构代码,级数,上级代码 from 系统数据_机构信息 where 机构代码=2
union all
select a.机构名称,a.机构代码,a.级数,a.上级代码 from 系统数据_机构信息 a
join t on t.机构代码 =a.上级代码)
select 机构代码 from t
上面那个问题不问了,用其他方式代替了。
现在问的这个问题,比如我通过上面的递归,获得了本部门及所属部门的“机构代码”
我如何将这个“机构代码”作为另一个条件?
比如: select * from a where 机构代码 in (上述得出的机构代码)
;with t as (
select 机构名称,机构代码,级数,上级代码 from 系统数据_机构信息 where 机构代码=2
union all
select a.机构名称,a.机构代码,a.级数,a.上级代码 from 系统数据_机构信息 a
join t on t.机构代码 =a.上级代码)
---- select 机构代码 from t
select * from 系统数据_机构信息 where 机构代码 in
(select 机构代码 from t)
直接放到子查询里不就可以啦