Oracle层次查询和with函数的使用示例

 更新时间:2013年07月02日 11:43:05   作者:  
下面我跟大家分享下我的心得,也就是基于这种设计怎么做数形图,简单的做法就是查询出一个list集合就可以,要怎么办呢先来看下我的数据表
开发中大家应该都做过什么类似部门管理这样的功能,一般情况下一个部门下面还有下一级部门(子部门),这个层级就类似一棵树。这种情况下一般会把父级部门和子级部门分成2个或者多个表,这种算是比较常规的做法;有时可能为了数据表管理的方便 就把所有的部门放在一张表里并加上一个字段标识部门之间的隶属关系,这样子看起来有点奇怪,但凑合用用还是Ok的。下面我跟大家分享下我的心得,也就是基于这种设计怎么做数形图,简单的做法就是查询出一个list集合就可以,要怎么办呢先来看下我的数据表
 
不难看出部门之间用fparent关联,那sql语句怎么写呢,下面是一种偷懒的写法
复制代码 代码如下:

-- ||是连接符,level可以看成常量
select t.fnum,LPAD(' ',3*level-3)||'|-'||fname fname,t.fparent,Level lev
From m_depart t
--start with后面是条件1
start with fparent is null
--connect by Prior后面是条件2
connect by Prior fnum=fparent

下面是查询结果,查询结果和数非常接近
 
差不多了下面还有一个比较常用的with函数,一般做复杂查询可能会用到,可以参考下面的文章

相关文章

  • Oracle中分组查询group by用法规则详解

    Oracle中分组查询group by用法规则详解

    这篇文章主要介绍了Oracle中分组查询group by用法规则详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • oracle删除已存在的表的实例

    oracle删除已存在的表的实例

    查询系统表,判断表是否存在,存在则直接删除
    2013-02-02
  • sql in查询元素超过1000条的解决方案

    sql in查询元素超过1000条的解决方案

    在oracle数据库中sql使用in时,如果in的能数超过1000就会出问题,下面这篇文章主要给大家介绍了关于sql in查询元素超过1000条的解决方案,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • Oracle dbf文件移动的方法

    Oracle dbf文件移动的方法

    这篇文章主要介绍了Oracle dbf文件移动的方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-05-05
  • Hibernate Oracle sequence的使用技巧

    Hibernate Oracle sequence的使用技巧

    本文介绍了关于Hibernate中如何使用Oracle sequence的问题以及应注意的事项。
    2009-06-06
  • oracle while的用法示例分享

    oracle while的用法示例分享

    Oracle with语句是经常可以见到的语句,下面就为您详细介绍Oracle with语句的用法,如果您对Oracle with语句感兴趣的话,不妨一看
    2014-03-03
  • oracle单库彻底删除干净的执行步骤

    oracle单库彻底删除干净的执行步骤

    oracle单库彻底删除干净:关闭数据库、关监听、清除残余文件、删除用户和组,详细操作如下,感兴趣的朋友可以参考下哈
    2013-05-05
  • Oracle查询语句中rownum与rowid的不同之处分析

    Oracle查询语句中rownum与rowid的不同之处分析

    这篇文章主要介绍了Oracle查询语句中rownum与rowid的不同之处分析,需要的朋友可以参考下
    2014-07-07
  • Oracle手动建库安装部署超详细教程

    Oracle手动建库安装部署超详细教程

    这篇文章主要介绍了Oracle手动建库安装部署超详细教程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03
  • Oracle中scott表结构与简单查询实例分析

    Oracle中scott表结构与简单查询实例分析

    这篇文章主要介绍了Oracle中scott表结构与简单查询,实例分析Oracle查询的相关技巧,需要的朋友可以参考下
    2015-04-04

最新评论