mysql8.0版本支持递归,递归写法

MySQL8引入了递归公共表表达式(CTE),使得在SQL中处理递归任务如遍历菜单或目录变得简单。在此之前,开发者需要借助存储过程或编程语言来实现。递归CTE的使用方式是通过WITH关键字定义一个递归查询,例如遍历1到5的数字序列。这一改进为数据库操作带来了便利。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

递归sql

如果在mysql8之前想要写递归的sql,需要写存储过程,或者改用程序代替

在mysql8版本,mysql8支持了递归,新增了cte表,写法如下

WITH RECURSIVE cte (n) AS
(
  SELECT 1
  UNION ALL
  SELECT n + 1 FROM cte WHERE n < 5
)
SELECT * FROM cte;

以后遍历菜单,遍历目录等很方便

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值