`

根据父子项目---查询父子项

 
阅读更多

 

 

 

CREATE OR REPLACE VIEW V_PTREE_TEMP AS

  SELECT LEVEL LV, CONNECT_BY_ISLEAF LF, P.PARENTID, P.ID,SYS_CONNECT_BY_PATH(ID, '-')||'-' FULLPATH

    FROM BO_PROJECT P

  CONNECT BY PRIOR P.ID = P.PARENTID

   START WITH P.PARENTID = 0

最后添加-,防止13与139也匹配重复

 

SELECT * FROM V_PTREE_TEMP  T1,BO_PROJECT T2 WHERE 

 (T2.ID=14715 OR T2.ID=43100 --联合父子项

 OR T2.ID=15049  --子项

  OR T2.ID=15055 --父项

  )

 AND T1.FULLPATH  LIKE '%-'||T2.ID||'%-'

--这个能统计所有 父子项;

 

---==============================================----

SELECT * FROM V_PTREE_TEMP  T1,BO_PROJECT T2 WHERE 

 (T2.ID=14715 OR T2.ID=43100 --联合父子项

 OR T2.ID=15049  --子项

  OR T2.ID=15055 --父项

  )

 AND T1.FULLPATH  LIKE '%-'||T2.ID||'%-'

 AND T1.ID<>15055 AND T1.ID<>14715 --去除多余父项

--这个能统计所有 子项;

 

---==============================================----

SELECT * FROM V_PTREE_TEMP  T1,BO_PROJECT T2 WHERE 

 (T2.ID=14715 OR T2.ID=43100 --联合父子项

 OR T2.ID=15049  --子项

  OR T2.ID=15055 --父项

  )

 AND T1.FULLPATH  LIKE '%-'||T2.ID||'%-'

 AND T1.PARENTID=0

--这个能统计所有 父项;

 

 

最后这句才是王道,前面都是浮云

 

  SELECT T1.ID FROM V_PTREE_TEMP  T1,BO_PROJECT T2 WHERE 

 ( T2.ID=14715 OR T2.ID=43100 --联合父子项

  )

 AND T1.FULLPATH  LIKE '%-'||T2.ID||'-%' GROUP BY T1.ID

 

t1.id才是我想要的id,其实都会出笛卡尔积;因此我还要过滤下,父子项的重复关联;

这样不管来什么子的,或父的id,我都能算出全部id;

 

 

分享到:
评论

相关推荐

    maven 简单的父子项目例子

    本示例是一个"Maven 简单的父子项目例子",旨在展示如何通过Maven的多模块(multi-module)结构来组织和构建一个包含多个子项目的工程。 在这个例子中,项目名为 "test",它包含了三个子模块:jar a、war b 和 war ...

    Java gradle创建聚合项目(父子级项目)

    通过父项目,我们可以统一配置所有子项目的构建过程,例如设置版本号、依赖项等,从而简化大型项目的维护。 1. **创建父项目** 在Gradle中,创建父项目主要涉及`settings.gradle`文件。此文件用于声明子项目的路径...

    mid父子窗口示例(源码示例)

    "MID"标签可能指的是MFC(Microsoft Foundation Classes)框架中的成员ID,这是一个在Windows平台上常见的用于识别控件和菜单项的标识。 在Windows编程中,父子窗口的关系通常通过`CreateWindow`或`CreateDialog`...

    girdview嵌套,父子girdview

    // 获取选中的父项数据,根据数据加载子GridView SubGridViewAdapter adapter = new SubGridViewAdapter(subItems); GridView subGridView = (GridView) view.findViewById(R.id.sub_grid_view); subGridView....

    WPF中DataGrid主从数据(父子数据)展示

    在WPF(Windows Presentation Foundation)应用开发中,DataGrid控件是用于显示和操作表格数据的强大工具。在处理复杂的数据关系时...在实际项目中,根据具体需求,可能还需要处理更多细节,如排序、过滤、编辑验证等。

    父子页面相互调用总结

    在IT行业中,父子页面之间的通信是一项常见的需求,特别是在构建复杂Web应用时。本文将深入探讨四种主要的方法:`showModelessDialog`、`window.open`、`showModalDialog`以及`iframe`,来实现这样的交互。 首先,...

    【vs2005】【C#】MID窗体--实现父子窗体

    本文将深入探讨如何在VS2005中使用C#来创建和管理MID窗体,以及如何实现父子窗体之间的通信。 首先,我们需要创建一个新的Windows Forms项目。在VS2005中,选择"File" &gt; "New" &gt; "Project",然后在项目模板中选择...

    vb父子窗体实例

    在本例中,用户通过树形控件选择项目,触发相应的子窗体显示。 **2. 树形控件的使用** 树形控件(TreeView)是一种常见的GUI元素,用于展示层次结构的数据。在VB中,我们可以使用TreeView控件来创建一个可点击的...

    gradle多模块开发

    在现代软件开发中,Gradle已经成为了Java领域广泛使用的构建工具,尤其在大型项目和多模块项目中,其优势更为显著。"gradle多模块开发"这个主题涉及到如何有效地管理和构建多个相互依赖的子项目,形成一个整体的工程...

    基于Maven、Dubbo、Zookeeper、Spring和父子工程之间调用的新手项目搭建

    在IT行业中,构建大型分布式系统是一项复杂而关键的任务。Dubbo作为阿里巴巴开源的一款高性能、轻量级的服务治理框架,常用于构建微服务架构。本文将详细介绍如何基于Maven、Dubbo、Zookeeper以及Spring框架搭建一个...

    nicklee的demo(针对父子列表清单)

    2. **CSS 样式**:如何用CSS控制列表的视觉呈现,例如折叠/展开的图标,以及父子项的缩进,以体现层级关系。 3. **JavaScript 交互**:使用JavaScript(可能包括jQuery或其他库)来实现列表的交互功能,如点击展开/...

    Example051-父子关系的Command对象.rar

    Command对象通常指的是在Windows应用程序中的按钮、菜单项等用户可交互的对象,它们允许用户执行特定的操作或触发事件。 在VB中,Command对象可以有父子关系,这主要是通过容器控件(如Form或GroupBox)来实现的。...

    Reporting Service 父子下拉树型菜单,父子下钻

    6. **测试与优化**:最后,进行详尽的测试以确保各个层级间的转换顺畅,同时根据用户反馈进行必要的调整,优化用户体验。 在提供的文件"TreePage"中,可能包含了实现上述功能的代码示例、报表模板或者相关的配置...

    P23_同时创建父子资源_创建资源集合_Routine.Api2020_2_8.rar

    `.csproj`文件则是项目文件,定义了项目的编译设置、依赖项等。 综上所述,这个项目提供了一个实际的示例,演示了如何在ASP.NET Core中利用ReSharper的ApiController特性构建RESTful API,同时创建父子资源和管理...

    swift-模拟UITabBarController的父子控制器效果实现父子控制器管理

    在实际项目中,可以将 `Parent-sub-Control-master` 文件夹中的代码导入Xcode项目,然后根据项目的具体需求进行调整和扩展。记住,编写清晰、可维护的代码对于长期的项目维护至关重要。在实现过程中,遵循苹果的编程...

    C#实现父子窗体嵌套.zip

    在C#编程中,父子窗体的嵌套是一种常见的用户界面设计模式,它允许一个窗体(父窗体)打开另一个窗体(子窗体),并控制子窗体的显示和关闭。这样的设计有助于创建更复杂的多窗口应用程序,提供更好的用户体验。在...

    ActsAsTree-扩展ActiveRecord以添加简单支持,以将项目组织成父子关系。-Ruby开发

    ActsAsTree ActsAsTree扩展了ActiveRecord,以添加对将项目组织成父子关系的简单支持。 默认情况下,ActsAsTree需要一个称为parent_id的外键列。 示例类Catego ActsAsTree ActsAsTree扩展了ActiveRecord,以添加对将...

    P14_获取父子关系的资源二_Routine.Api2020_2_6.rar

    开发者可能使用Entity Framework Core来操作这个数据库,包括读取、写入和查询父子关系。 `appsettings.json`和`appsettings.Development.json`是应用的配置文件,它们包含了应用的环境特定设置,如数据库连接字符...

    vue记事本案例(父子组件通信)

    在这个"vue记事本案例"中,我们重点探讨的是Vue.js中的父子组件通信,以及如何实现新增待办、删除待办(一键清空)、待办数量统计和持久化存储功能。 首先,让我们关注父子组件通信。在Vue.js中,父子组件之间的...

Global site tag (gtag.js) - Google Analytics