gpt4 book ai didi

sql - 带条件的 CONNECT_BY_ISLEAF

转载 作者:行者123 更新时间:2023-12-04 07:07:25 25 4
gpt4 key购买 nike

我使用整个 START WITH 在一张 table 上进行了分层设置和 CONNECT BY子句,我使用它来设置一个垂直对齐的菜单系统,该系统可以向右扩展,具体取决于菜单选项是否有子项和级别总数。此外,作为菜单选项的一部分,如果 parent 有 child ,我还会显示 '>'符号来指定这一点。

我的问题是,我正在使用 CONNECT_BY_ISLEAF确定菜单选项是否为叶,但我的分层表中还有一列指定菜单选项是否处于事件状态。

因此,当我的菜单中有父/子设置的情况时,ISLEAF Parent 的值是 0Child1 ,但我实际上已将子菜单选项设为非事件状态,我的 '>'即使此父级的子记录处于非事件状态,符号仍显示在父级级别。

知道如何与 CONNECT_BY_ISLEAF 一起检查这个问题吗?值,以防止 '>'即使此父菜单选项具有非事件子记录,也会出现符号?

基本上想要的东西,如果基于 ISLEAF 存在子记录值但子记录处于非事件状态,然后忽略此叶记录并假装它实际上不存在。

最佳答案

SELECT  *
FROM table
CONNECT BY
parent = PRIOR id
AND active = 1

仅当它处于事件状态时才会选择一个 child ,如果这是您想要的。

请注意,此查询将返回 CONNECT_BY_ISLEAF = 1对于没有事件子项的项目,它们可能会在您的设计中被视为端点。

关于sql - 带条件的 CONNECT_BY_ISLEAF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/916300/

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