sql语句关于查询上下级部门的问题-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

sql语句关于查询上下级部门的问题

2016-07-04 15:05:18 2972 2

部门id 父部门 部门名称
1 0 局领导
2 1 办公室
3 2 人事科

我现在想查询的是部门为1的局领导部门下的所有的子部门。我能想到的是用递归,就是先查询父部门为1的部门,可以得到部门id=2的 办公室部门,然后查询父部门id=2的部门,查询到人事科部门。

想请教下sql语句怎么写....

SQL
取消 提交回答
全部回答(2)
  • 厚积博观
    2019-07-17 19:50:42

    用子查询不就可以了吗?

    0 0
  • a123456678
    2019-07-17 19:50:42

    简单的做法是加一列部门Path,

    create  table #Dept(部门id int,父部门 int,部门名称 varchar(64),部门Path varchar(64))
    insert into #Dept values(1,0,'局领导','0')
    insert into #Dept values(2,1,'办公室','0.1')
    insert into #Dept values(3,2,'人事科','0.1.2')
    
    --查询父部门为1的所有部门
    select * from #Dept where 部门Path like '0.1.%' or 部门Path ='0.1'
    
    --查询父部门为2的所有部门
    select * from #Dept where 部门Path like '0.1.2.%'or 部门Path ='0.1.2'
    
    drop table #Dept
    0 0
添加回答
相关问答

4

回答

SQL查询语句优化

2022-03-01 18:08:57 4681浏览量 回答数 4

1

回答

SQL语句中优化关联查询?

2021-10-02 09:53:29 802浏览量 回答数 1

1

回答

关于sql查询的小问题

2016-07-04 16:16:02 1515浏览量 回答数 1

2

回答

sql高效查询的问题

2016-07-01 15:06:36 1568浏览量 回答数 2

1

回答

SQL语句的问题

2016-06-23 15:54:51 3728浏览量 回答数 1

1

回答

sql查询语句优化

2016-06-16 17:41:50 2193浏览量 回答数 1

1

回答

查询增量的sql语句

2016-06-15 16:51:58 7444浏览量 回答数 1

2

回答

关于sql语句update的问题

2016-06-08 14:17:01 1858浏览量 回答数 2

1

回答

优化SQL语句查询

2016-02-12 14:59:28 1607浏览量 回答数 1

1

回答

sql语句查询结果重复的问题

2016-02-11 11:53:54 1882浏览量 回答数 1
+关注
0
文章
14879
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载