MySql如何利用父id递归向下查询子节点
发表于:2025-11-07 作者:千家信息网编辑
千家信息网最后更新 2025年11月07日,这篇文章主要介绍了MySql如何利用父id递归向下查询子节点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。不用写存储过程,不用建数据库
千家信息网最后更新 2025年11月07日MySql如何利用父id递归向下查询子节点
这篇文章主要介绍了MySql如何利用父id递归向下查询子节点,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
不用写存储过程,不用建数据库函数,一段sql就可以实现
SELECT ID.LEVEL, DATA.* FROM ( SELECT @ids AS _ids, ( SELECT @ids := GROUP_CONCAT( region_id ) FROM region WHERE FIND_IN_SET(parent_id, @ids ) ) AS cids, @l := @l + 1 AS LEVEL FROM region, ( SELECT @ids := 3, @l := 0 ) b WHERE @ids IS NOT NULL ) ID, region DATA WHERE FIND_IN_SET( DATA.region_id, ID._ids ) ORDER BY LEVEL

测试
--创建测试环境create table t_test( id int PRIMARY key, parent_id int, name varchar(200))insert t_test VALUES(1,null,"中国");insert t_test VALUES(2,1,"华北");insert t_test VALUES(3,2,"山西省");insert t_test VALUES(4,2,"北京");insert t_test VALUES(5,3,"临汾市");insert t_test VALUES(6,4,"北京市");insert t_test VALUES(7,5,"尧都区");insert t_test VALUES(8,6,"朝阳区");insert t_test VALUES(9,7,"解放西路");insert t_test VALUES(10,8,"朝阳北路");SELECT * FROM t_test;
测试数据展示

查询 id=1,查询中国下边有哪些地方
SELECT ID.LEVEL, DATA.* FROM ( SELECT @ids AS _ids, ( SELECT @ids := GROUP_CONCAT( id ) FROM t_test WHERE FIND_IN_SET(parent_id, @ids ) ) AS cids, @l := @l + 1 AS LEVEL FROM t_test, ( SELECT @ids := 1, @l := 0 ) b WHERE @ids IS NOT NULL ) ID, t_test DATA WHERE FIND_IN_SET( DATA.id, ID._ids ) ORDER BY LEVEL
id=3,查询山西下边有哪些地方
SELECT ID.LEVEL, DATA.* FROM ( SELECT @ids AS _ids, ( SELECT @ids := GROUP_CONCAT( id ) FROM t_test WHERE FIND_IN_SET(parent_id, @ids ) ) AS cids, @l := @l + 1 AS LEVEL FROM t_test, ( SELECT @ids := 3, @l := 0 ) b WHERE @ids IS NOT NULL ) ID, t_test DATA WHERE FIND_IN_SET( DATA.id, ID._ids ) ORDER BY LEVEL
id=4,查询北京下边有哪些地方
最后再从 id=2 华北地区往下查询
感谢你能够认真阅读完这篇文章,希望小编分享的"MySql如何利用父id递归向下查询子节点"这篇文章对大家有帮助,同时也希望大家多多支持,关注行业资讯频道,更多相关知识等着你来学习!
查询
篇文章
地方
北京
测试
节点
递归
不用
数据
中国
华北
山西
朝阳
价值
兴趣
函数
同时
地区
数据库
更多
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
海南佰翊互联网科技有限公司
网络安全教育有关视频
网络安全宣传小讲师
饭堂小程序定制软件开发
一台服务器接多个网卡
16核服务器qps
spa数据库用
半导体网络安全事件
如何搭建饥荒联机版服务器
维普数据库怎么设置
苹果电脑做软件开发好吗
软件开发公司财务部
数据库事务spring
服务器监控硬盘接口
数据库字符型时间
教育行业网络安全预案
亿佰网络技术有限公司
中转站服务器怎么延迟那么高
大学法制主题培训基地软件开发
东本网络技术
不查数据库情况下实现id自增
数据库故障切换
软件开发人员绩效考核办法
网络安全上市公告
网络安全法和刑法
计算机网络技术元素图片
国内有名的网络安全网站
数据库查询返回列表为null吗
从逻辑角度看 数据库对象
985硕士软件开发工资多少