找回密码
 开放注册

QQ登录

只需一步,快速开始

微信登录

微信扫码,快速开始

通达OA官网网站
搜索
查看: 2289|回复: 4

如何在mysql中查询属于同一机构的所有用户(存在多层级部门)

[复制链接]

2

主题

4

回帖

24

牛毛

二级牛人

积分
30
发表于 2016-5-28 21:54:24 | 显示全部楼层 |阅读模式 来自 湖北省宜昌市夷陵区
本帖最后由 leem 于 2016-5-29 09:42 编辑

  在mysql用户表(user)中,只有用户所在部门ID字段“DEPT_ID”;但同一机构下有多个部门。后来想到用部门信息表(department)中部门ID字段“DEPT_ID”与user表中的用户所在部门ID字段关联,通过上级部门ID字段“DEPT_PARENT”来筛选出同一机构下的用户,但有部分部门存在多层级的结构,所以这种方式也行不通。
   不知道还有没有好的办法查询出同一机构下的所有用户。想请技术人员帮忙解答一下,谢谢了!

2

主题

4

回帖

24

牛毛

二级牛人

积分
30
 楼主| 发表于 2016-5-28 21:57:30 | 显示全部楼层 来自 湖北省宜昌市夷陵区
主要是筛选出的用户表要与另一个系统的用户表同步,另一个系统只能由OA中这一个机构的用户使用,所以需要这样一个查询语句。

2

主题

4

回帖

24

牛毛

二级牛人

积分
30
 楼主| 发表于 2016-5-29 09:40:08 | 显示全部楼层 来自 湖北省宜昌市夷陵区
因为选择用户的时候可以框选整个机构然后导出该机构中所有用户,所以想知道如何通过mysql查询语言实现这个过程。

12

主题

73

回帖

2208

牛毛

游客

积分
2275
发表于 2016-7-18 12:18:19 | 显示全部楼层
本帖最后由 YongQin 于 2016-7-18 13:31 编辑

SELECT u.USER_ID,u.USER_NAME,d.DEPT_NAME,d.DEPT_NO FROM `user` u
left join `department` d on u.DEPT_ID=d.DEPT_ID
where `DEPT_NO` regexp  concat("^",(SELECT `DEPT_NO` FROM `department` WHERE `DEPT_NAME` like "成都公司"))

成都公司为公司名称

0

主题

584

回帖

1042

牛毛

游客

积分
1626
发表于 2016-7-25 17:44:34 | 显示全部楼层
YongQin 发表于 2016-7-18 12:18
SELECT u.USER_ID,u.USER_NAME,d.DEPT_NAME,d.DEPT_NO FROM `user` u
left join `department` d on u.DEPT_ ...

您好,感谢您的关注与支持。
您需要登录后才可以回帖 登录 | 开放注册

本版积分规则

咨询电话:400 818 0505 通达OA,国内协同管理软件行业内唯一的央企单位,中国协同OA软件的领跑者,优秀协同办公解决方案供应商

帮助|Archiver|小黑屋|通信管理局专项备案号:[2008]238号|由NB5牛论坛提供技术支持NB5社区 ( 皖ICP备08004151号;皖公网安备34010402700514号 )

GMT+8, 2025-4-30 14:40 , Processed in 0.198606 second(s), 51 queries .

Powered by Discuz

Copyright © 2001-2025, 北京通达信科科技有限公司.

快速回复 返回顶部 返回列表