WITH RECURSIVE category_tree AS (
-- 基础查询:选择根节点
SELECT id, name, parent_id, 0 AS level
FROM categories
WHERE parent_id IS NULL
UNION ALL
-- 递归部分:连接子节点
SELECT c.id, c.name, c.parent_id, ct.level + 1
FROM categories c
INNER JOIN category_tree ct ON c.parent_id = ct.id
)
-- 查询递归结果
SELECT * FROM category_tree;
categories 表中选择所有没有父节点的记录(即根节点),并设置初始层级为 0。这个例子展示了如何在 MySQL 中使用递归查询来处理层次结构数据,例如分类或组织结构。
上一篇:mysql 查看当前连接数
下一篇:mysql 替换函数
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站