sql递归查询上级_递归的实际业务场景之MySQL 递归查询

本文探讨了如何在MySQL中实现递归查询上级节点,通过设计包含parentid字段的数据库结构,提出应用层代码递归和MyBatis的collection标签两种方案,并分析了它们的性能和适用场景。建议在考虑性能时,优先选择一次性获取全部数据再进行应用层处理的方法。
摘要由CSDN通过智能技术生成

0c6d048fd0c949ceed2b57a5c5aa59e5.png
喜欢就点个赞呗!
源码<--请点击此处查看

引入

当我看到一些评论时,例如下面的样子。我挺好奇这个功能是怎么样做出来的。进过查阅资料,发现这其实是 MySQL 的递归操作。下面就让我操作一下怎么实现 MySQL 的递归查询。

022878f56889b175c25b32c2e9749af2.png

设计数据库

观察这种数据库设计,你会发现他都有一个父节点,一直到根节点,所以我们设计数据库的时候,应该设置一个 parentid 字段。所以,我们可以得到以下的数据库。

94abb3056a3c7d8fb0e3f248f978be83.png

sql 脚本如下

CREATE TABLE digui(
   
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值