国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

Oracle層次查詢和with函數的使用示例

2020-07-26 14:24:49
字體:
來源:轉載
供稿:網友
開發中大家應該都做過什么類似部門管理這樣的功能,一般情況下一個部門下面還有下一級部門(子部門),這個層級就類似一棵樹。這種情況下一般會把父級部門和子級部門分成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函數,一般做復雜查詢可能會用到,可以參考下面的文章
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 东源县| 澄迈县| 宁河县| 岳普湖县| 巴彦淖尔市| 永春县| 承德市| 仁怀市| 江北区| 山阴县| 涪陵区| 济阳县| 垣曲县| 固阳县| 洞口县| 永新县| 南漳县| 宣化县| 兴山县| 丹凤县| 乐山市| 禹城市| 蒲江县| 乐清市| 上思县| 奉新县| 观塘区| 平顺县| 积石山| 淅川县| 盐池县| 廊坊市| 新巴尔虎左旗| 张北县| 琼海市| 海阳市| 化隆| 浑源县| 鹤山市| 陆丰市| 万荣县|