MySQL5.7递归查询

向下递归查询

sql 复制代码
SELECT ID,NAME,PARENT_ID,LEVEL_
	FROM(SELECT @ID AS _IDS,
	           (SELECT @ID := GROUP_CONCAT(ID)
					FROM TREE_TABLE 
				WHERE FIND_IN_SET(PARENT_ID,@ID) > 0
				AND REMOVE = 'N') T1,
				@L := @L + 1 AS LEVEL_
			FROM TREE_TABLE,
			(SELECT @ID := 'start', @L:= 0) T2
		   	WHERE @ID IS NOT NULL) T3,
           TREE_TABLE T4
   WHERE FIND_IN_SET(T4.ID,T3._IDS) > 0
ORDER BY T3.LEVEL_,T4.SORT

start为开始递归的父ID,LEVEL为层级,SORT为原来表里的排序字段。

相关推荐
徐子元竟然被占了!!5 小时前
Linux-systemctl
linux·数据库·oracle
YJlio7 小时前
Active Directory 工具学习笔记(10.8):AdInsight——保存与导出(证据留存、共享与二次分析)
数据库·笔记·学习
suoyue_zhan7 小时前
GBase的管理监控平台GEM实践指南
数据库
哈哈老师啊8 小时前
Springboot学生综合测评系统hxtne(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
java·数据库·spring boot
小小8程序员8 小时前
Redis-10
数据库·redis·缓存
liuzhilongDBA8 小时前
从collation mismatch异常到其原理
数据库·version·glibc·postgres·collation
梁萌8 小时前
MySQL数据库分库分表介绍
数据库·mysql·shardingsphere·分库分表
占疏9 小时前
dify API访问工作流/聊天
开发语言·数据库·python
Cat God 00710 小时前
SQL使用及注意事项
数据库·sql·mysql