gpt4 book ai didi

mysql - 创建 TreeView 循环查询

转载 作者:行者123 更新时间:2023-11-30 01:23:36 24 4
gpt4 key购买 nike

我设计了一个 TreeView 结构如下:*parentID = 0 表示树根

ID    parentID
1 0
2 0
3 1
4 1
5 1
6 3
7 4
8 5
9 5
10 5
11 2
12 2
13 10

当我传递“1”参数时,它将返回根“1”下所有内容的结果,预期结果:

ID  parentID
1 0
3 1
4 1
5 1
6 3
7 4
8 5
9 5
10 5
13 10

可以通过单个查询解决这个问题吗?

最佳答案

按照您现在存储树的方式,不可能通过一个纯 SQL 查询获取整个树。您需要用其他语言(C#、支持循环的存储过程……)编写循环来获取树。

This是一篇很好的文章,描述了如何使用存储树的方式(包括获取树和从树中删除项目)。

更有趣的是,该文章还描述了一种将树存储在数据库表中的方法,该方法确实允许在单个查询中获取整个树。它的名字叫pre-order tree traversal 。您可以查找它以获取更多信息。我找到了C# implementation 。它比您现在使用的方式涉及更多的逻辑,但对于除最小的树之外的所有树来说,其性能都更高。

关于mysql - 创建 TreeView 循环查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18264158/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com