问题:
遍历分层结构,例如物料清单表需要一种递归检索行的方法来创建嵌套树表示。然而,传统的 SQL 查询处理递归的能力有限。
答案:
2011 年,DBA StackExchange 上发布了一个问题,寻求树的 MySQL 解决方案遍历。响应提供了一组存储过程:
实现:
调用GetFamilyTree(item_id) 检索特定项目的家谱。此存储过程将递归地查找父级和所有祖先,以分层树结构的形式返回结果。
示例:
CREATE PROCEDURE GetFamilyTree( IN item_id INT ) BEGIN SELECT ... # Perform recursive tree traversal END;
用法:
CALL GetFamilyTree(1);
这将检索第 1 项的整个家谱并以嵌套格式呈现。
优点:
以上是如何从 MySQL 分层数据递归构建树结构?的详细内容。更多信息请关注PHP中文网其他相关文章!