`
sshzhangwg
  • 浏览: 70809 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Oracle的多表树查询

阅读更多

    地区是树形结构,地区下面还有结构,即机构表中有一个地区ID字段。要把这两个东西组织在一起,挂在一棵树上。刚开始想得有点复杂了,先查出地区树然后遍历出每个地区下面的机构,再绑定这种关系。马上否决了这个想法,因为 1、很复杂 2、性能慢会成为大问题。

    实际上很简单的,我们把问题想复杂了,下面我贴出SQL,看下就明白了:

 

select *
  from (select area_id as id,
               area_name as text,
               area_parentid as pid,
               '0' as isOrg,
               'false' as isexpand
          from d_area a
        union
        select id,
               orgname as text,
               area_id as pid,
               '1' as isOrg,
               'false' as isexpand
          from ac_org b) t
 start with t.id = '49'
connect by t.pid = prior t.id;

 

分享到:
评论

相关推荐

    oracle 基于 树结构查询

    Oracle 基于树结构查询详解 Oracle 基于树结构查询是一种高效的查询方式,特别在处理树型结构数据时。树结构查询可以快速地检索树型结构数据,并且可以根据实际需求进行查询优化。 树结构查询的基本概念: 树结构...

    Oracle递归树形结构查询功能

    Oracle数据库在处理树形结构数据时提供了强大的递归查询功能,这种特性对于组织结构、产品分类、层级菜单等场景的应用非常广泛。递归树形结构查询主要依赖于`CONNECT BY`和`PRIOR`关键字,它们允许我们构建复杂的...

    oracle菜单树查询

    oracle菜单树查询 使用实例 使用START WITH CONNECT BY PRIOR子句实现递归查询

    Oracle数据库中大型表查询优化的研究

    综上所述,Oracle数据库中大型表查询优化涉及多个方面,包括索引优化、查询设计、工具利用、分区技术和数据库配置。每个环节都需要根据具体情况进行细致分析和调整,以实现最佳的查询性能。在实际操作中,应结合实际...

    Oracle查询树形结构

    例如,在 DEPT 表中,查询所有部门的树形结构可以使用以下语句: SELECT * FROM persons.dept START WITH deptid=76 CONNECT BY PRIOR paredeptid=deptid; 这条语句将从部门 ID 为 76 的部门开始,查询所有的子...

    Oracle树查询总结

    在处理树查询时,应避免 `NULL` 的 `parent_id` 值,因为这可能导致全表扫描,影响性能。建议使用特定的值(如 0)来表示顶级父节点。此外,理解 `PRIOR` 关键字的作用至关重要,它在 `CONNECT BY` 语句中用于引用...

    Oracle树查询实例分析

    Oracle树查询是数据库管理中处理层次结构数据的重要技术,它主要依赖于`SELECT...START WITH...CONNECT BY...PRIOR`的语法。这个语法允许我们按照树的结构来组织和检索数据,尤其适用于表示组织结构、目录层级或者...

    【原创】oracle树形结构查询,层次查询,hierarical retrival

    Oracle树形结构查询,层次查询,hierarchical retrieval Oracle中的树形结构查询,也被称为层次查询或hierarchical retrieval,是一种获取树形结构数据的方法。这种方法可以将数据组织成树形结构,具有层次关系的...

    Oracle树查询及相关函数

    Oracle树查询是数据库管理中一种非常实用的技术,它允许我们处理具有层级关系的数据。在Oracle中,树查询主要依赖于`SELECT...START WITH...CONNECT BY...PRIOR`语法,这个语法让我们能够按照层级结构遍历数据。本文...

    Oracle树结构查询(图)

    由于递归查询可能涉及大量的数据和多次表扫描,因此合理使用索引和优化查询条件至关重要。此外,Oracle的`CYCLE`子句可以帮助我们处理循环引用,避免无限递归的情况。 总的来说,理解并熟练运用Oracle的树结构查询...

    oracle树查询

    oracle语句非常强大,支持各种函数的查询,解决实际复杂的业务逻辑问题,比如:对一个表的父子查询,迭代查询等,这篇文档教你很快掌握oracle的树形结构查询,欢迎下载!

    基于Oracle的层次树查询功能及实例分析.pdf

    《基于Oracle的层次树查询功能及实例分析》 在关系型数据库中,处理具有层次结构的数据通常需要复杂的迭代编程,而Oracle的层次树查询功能提供了一种高效且简洁的解决方案。本文将深入探讨Oracle的层次树查询技术,...

    oracle树形查询

    最近项目中遇到,开始不太了解,现在分享一下,希望可以帮助其他人

    递归查询菜单树,支持mysql,oracle

    这里,我们将深入探讨如何使用递归查询来构建菜单树,并特别关注在MySQL和Oracle这两种广泛使用的数据库系统中的实现。 首先,我们要理解什么是递归查询。递归查询是一种在数据库中处理层次数据的方法,它通过自身...

    oracle树结构查询方法

    总之,Oracle数据库支持对树形结构数据的高效查询,通过`CONNECT BY`和`START WITH`子句,我们可以轻松地构建和遍历这些层次关系,这对于理解和操作复杂的数据结构至关重要。在进行树结构查询时,理解这些语句的工作...

    ibatis下oracle树查询

    总的来说,实现iBatis下Oracle的树查询需要对iBatis的映射机制、Oracle的层次查询语法以及可能的Java反编译工具有一定了解。这涉及到数据库设计、SQL优化、框架使用等多个方面的知识,是提升数据库操作技能的重要...

    在ORACLE、MSSQL、MYSQL中树结构表递归查询的实现.pdf

    在数据库系统中实现树结构表递归查询是一种常见的需求,它允许我们查询出具有层级关系的数据。ORACLE、MSSQL(Microsoft SQL Server)、MYSQL是三大主流数据库系统,它们各自提供了不同的方式来实现递归查询。 首先...

Global site tag (gtag.js) - Google Analytics