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为原来表里的排序字段。

相关推荐
低音钢琴4 分钟前
【从零开始构建性能测试体系-08】如何诊断性能瓶颈:从服务器到数据库的全方位分析
服务器·数据库·php
蜡笔小炘20 分钟前
SQL sever数据库--第三次作业
数据库·sql·oracle
xuejianxinokok27 分钟前
io_uring 快吗? Postgres 17 与 18 的基准测试
数据库·后端·postgresql
PieroPc28 分钟前
用Python Streamlit Sqlite3 写一个简单商品管理系统
数据库·python·sqlite·streamlit
GOATLong1 小时前
MySQL内置函数
android·数据库·c++·vscode·mysql
bcgbsh1 小时前
数据库分类详解
数据库
立志成为大牛的小牛1 小时前
数据结构——二十九、图的广度优先遍历(BFS)(王道408)
数据结构·数据库·学习·程序人生·考研·算法·宽度优先
爬山算法1 小时前
Redis(78) 如何设置Redis的缓存失效策略?
数据库·redis·缓存
DemonAvenger2 小时前
深入Redis String:从基础到实战,10年经验的后端工程师带你解锁最佳实践
数据库·redis·性能优化
shuair2 小时前
redis大key问题
数据库·redis·缓存