-
mysql 递归查询下属组织的所有人10
有一个岗位表position(id,pid,name)
有一个员工表employee(id,name)
有一个员工岗位关系表emp_po_rel(e_id,p_id)
员工可有多职位,现在要查某人的所有下属员工,这个递归怎么写,大侠帮写一个能执行的脚本,数据库是mysql2014年4月03日 13:44
5个答案 按时间排序 按投票排序
-
BEGIN
DECLARE sTemp VARCHAR(1000);
DECLARE sTempChd VARCHAR(1000);
SET sTemp = '$';
SET sTempChd =cast(rootId as CHAR);
WHILE sTempChd is not null DO
SET sTemp = concat(sTemp,',',sTempChd);
SELECT group_concat(id) INTO sTempChd FROM treeNodes where FIND_IN_SET(pid,sTempChd)>0;
END WHILE;
RETURN sTemp;
END2014年4月04日 16:18
-
你的意思是不是:a有下属b,c
b有b1,b2
c有c1,c2,c3
现要查出b,b1,b2,c,c1,c2,c3
最简单办法,一般有层级的都有级别,设a8级,bc七级,
b1,b2,c1,c2,c3六级,那么只要name=a and level< 82014年4月03日 19:56
-
还真是不知道.
mysql既没有像oracle一样的树查询,也不支持with as的递归..
貌似除了procedure之外好像就没办法了.2014年4月03日 15:42
相关推荐
例如,在处理组织结构、文件系统或是地区划分时,通常会采用递归的方式来查询这些层级关系。MySQL作为一种广泛使用的数据库管理系统,提供了多种方法来实现递归查询。本文旨在通过对比两种不同的MySQL递归树查询方式...
MySQL 递归查询是指在 MySQL 中实现类似 Oracle Hierarchical Queries 的功能,用于查询树形结构中的所有子节点。由于 MySQL 目前还没有内置的递归查询功能,因此需要使用其他方法来实现。 第一种方法:使用函数来...
### MySQL 递归查询知识点详解 #### 一、MySQL 递归查询概述 在数据库查询中,递归查询主要用于处理层级或树形结构的数据。这类数据的特点是每一项记录不仅包含自身的信息,还可能与其他记录形成上下级关系。MySQL...
MySQL 递归查询是指在 MySQL 数据库中使用递归函数来实现树形结构数据的查询,例如部门表中某个部门的所有下属部分或者某个部分的所有上级部门。 在 MySQL 中实现递归查询需要使用自定义函数(Stored Function),...
地区表MySql递归sql脚本
通过递归查询,我们可以获取到所有级别的菜单项,包括它们的父级和子级。 在MySQL中,我们可以使用自连接来实现递归查询。假设我们有一个名为`menus`的表,包含`id`(主键)、`parent_id`(父菜单ID)和`name`...
### MySQL 递归查询树型结构的代码逻辑详解 在处理具有层次结构的数据时,例如组织架构、分类信息等场景,经常会遇到需要构建树形结构数据的需求。这种情况下,使用MySQL进行递归查询是一种非常有效的手段。下面...
例如,使用子查询来获取每个员工的所有下属,然后将这些结果与原表进行连接,直到没有新的下属为止。这种方式对数据库性能有一定要求,因为可能会产生大量的数据扫描。 ```sql SELECT e1.emp_id, e1.name FROM ...
### MySQL多种递归查询方法详解 #### 一、Oracle中的递归查询方法 在Oracle数据库中,递归查询可以通过`START WITH CONNECT BY PRIOR`语句实现。此语句允许用户按照树状结构来检索数据。 ##### 1. `START WITH ...
在MySQL数据库中,处理层级关系数据,如组织结构、菜单系统或分类树等,常常需要进行递归查询来获取树状结构的子节点。这里我们将深入探讨如何在MySQL中使用存储过程来实现这一功能。 首先,为了理解这个过程,我们...
- **组织架构查询**:查询某个员工的所有下属或者上司。 - **产品分类**:查询某一类别下的所有子类别。 - **文件系统浏览**:显示某个目录下的所有子目录和文件。 ### 性能考虑 尽管递归查询功能强大且灵活,但其...
要找出所有某员工的下属,包括下属的下属,可以使用如下递归查询: ```sql WITH RECURSIVE employee_tree AS ( SELECT id, name, manager_id FROM employees WHERE id = some_employee_id -- 指定要查询的员工ID...
用mysql实现oracle递归,通过with as 来实现
2. **组织架构**:企业的部门结构也是典型的层次结构,递归查询可以帮助快速获取某个部门及其下属的所有子部门。 3. **权限管理**:在权限管理系统中,权限之间可能存在包含关系,递归查询可以用来查找某一权限的...
mysql 树形结构查询 ...MySQL 中的树形结构查询可以使用存储过程来实现,并可以根据需要设置递归深度,以控制查询的深度。这种查询方式可以高效地查询树形结构的数据,并且可以提高查询效率和简化查询逻辑。
递归查询通常用于处理树形结构的数据,例如组织结构、菜单系统或者文件目录等。 首先,我们需要了解递归的基本概念。递归是一种算法,它通过调用自身来解决问题。在查询数据库时,递归查询意味着我们查询一个记录,...
"MyBatis之自查询使用递归实现 N级联动效果" MyBatis是一个功能强大且灵活的持久层框架,它支持自查询和递归查询,下面我们将探讨如何使用MyBatis实现 N级联动效果。 递归查询 递归查询是指在一个查询中调用自身...
递归查询的优点是可以提供快速的查询结果,但它也增加了域名服务器的负载,因为域名服务器需要执行所有的搜索工作。 迭代查询 迭代查询则有所不同。迭代查询的最好例子是一台本地域名服务器发送请求到根服务器。当...
在MyBatis中实现递归查询,可以编写一个自关联的Mapper方法,通过查询父节点并递归获取所有子节点,形成一棵完整的树形结构。 接下来,我们讨论SpringBoot。SpringBoot是Spring框架的简化版本,旨在简化微服务开发...