濮阳杆衣贸易有限公司

主頁 > 知識庫 > Oracle層次查詢和with函數(shù)的使用示例

Oracle層次查詢和with函數(shù)的使用示例

熱門標(biāo)簽:美圖秀秀地圖標(biāo)注 阿爾巴尼亞地圖標(biāo)注app 人工智能地圖標(biāo)注自己能做嗎 征服者火車站地圖標(biāo)注 外呼線路外顯本地號碼 百度地圖標(biāo)注素材 word地圖標(biāo)注方向 開封智能外呼系統(tǒng)廠家 征服眼公司地圖標(biāo)注
開發(fā)中大家應(yīng)該都做過什么類似部門管理這樣的功能,一般情況下一個部門下面還有下一級部門(子部門),這個層級就類似一棵樹。這種情況下一般會把父級部門和子級部門分成2個或者多個表,這種算是比較常規(guī)的做法;有時可能為了數(shù)據(jù)表管理的方便 就把所有的部門放在一張表里并加上一個字段標(biāo)識部門之間的隸屬關(guān)系,這樣子看起來有點奇怪,但湊合用用還是Ok的。下面我跟大家分享下我的心得,也就是基于這種設(shè)計怎么做數(shù)形圖,簡單的做法就是查詢出一個list集合就可以,要怎么辦呢先來看下我的數(shù)據(jù)表
 
不難看出部門之間用fparent關(guān)聯(lián),那sql語句怎么寫呢,下面是一種偷懶的寫法
復(fù)制代碼 代碼如下:

-- ||是連接符,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

下面是查詢結(jié)果,查詢結(jié)果和數(shù)非常接近
 
差不多了下面還有一個比較常用的with函數(shù),一般做復(fù)雜查詢可能會用到,可以參考下面的文章

標(biāo)簽:葫蘆島 泰安 淮南 六安 酒泉 孝感 宜春 海北

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle層次查詢和with函數(shù)的使用示例》,本文關(guān)鍵詞  Oracle,層次,查詢,和,with,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Oracle層次查詢和with函數(shù)的使用示例》相關(guān)的同類信息!
  • 本頁收集關(guān)于Oracle層次查詢和with函數(shù)的使用示例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    宜兰市| 兴安盟| 石台县| 涟水县| 昭平县| 越西县| 塔城市| 嘉义市| 织金县| 兰西县| 灵武市| 苍山县| 孟村| 惠安县| 资阳市| 云林县| 馆陶县| 临海市| 阆中市| 正宁县| 临夏市| 彩票| 宁河县| 隆化县| 贡山| 刚察县| 吉木萨尔县| 普陀区| 邳州市| 乌拉特前旗| 潍坊市| 达日县| 临安市| 鸡泽县| 红河县| 会昌县| 客服| 岱山县| 来凤县| 罗定市| 灵台县|