gpt4 book ai didi

mysql - SQL - 从嵌套结构中获取第一级节点

转载 作者:行者123 更新时间:2023-11-29 23:07:32 25 4
gpt4 key购买 nike

我正在使用 Joomla 和 Docman 组件。我需要访问 MySQL 中存储的一些数据,但我不知道如何查询它们。

我需要的是文档树的顶部节点列表,这看起来很简单(SELECT * FROMcategories WHEREparent IS NULL),但Docman使用了另一种结构。

这是 docman_categories 表的一部分:

docman_category_id INTEGER
title VARCHAR

此表与 docman_category_relations 相关,它是定义树的表:

ancestor_id INT
descendant_id INT
level INT

据我了解,ancestor_iddescendant_id 是与 docman_categories 表中的 docman_document_idlevel 的关系> 是一个数字,用于了解 ancestor_iddescendant_id 之间的距离(多少级别)。

我一直在尝试查找查询来获取第一级项目...您能帮我解决这个查询吗?

更多信息

在 docman_category_relations 中,ancestor_iddescendant_id 没有任何 null 值。

最佳答案

以下是仅获取顶部节点的正确查询:

SELECT * 
FROM docman_category_relations dcr
WHERE
(SELECT COUNT(ancestor_id)
FROM docman_category_relations r
WHERE r.descendant_id = cr.descendant_id) = 1

关于mysql - SQL - 从嵌套结构中获取第一级节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28232740/

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