佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Oracle遞歸查詢(xún)start with connect by prior的用法

Oracle遞歸查詢(xún)start with connect by prior的用法

熱門(mén)標(biāo)簽:AI電銷(xiāo) 網(wǎng)站排名優(yōu)化 服務(wù)外包 地方門(mén)戶(hù)網(wǎng)站 Linux服務(wù)器 呼叫中心市場(chǎng)需求 百度競(jìng)價(jià)排名 鐵路電話系統(tǒng)

一、基本語(yǔ)法

connect by遞歸查詢(xún)基本語(yǔ)法是:

select 1 from 表格 start with ... connect by prior id = pId

start with:表示以什么為根節(jié)點(diǎn),不加限制可以寫(xiě)1=1,要以id為123的節(jié)點(diǎn)為根節(jié)點(diǎn),就寫(xiě)為start with id =123

connect by:connect by是必須的,start with有些情況是可以省略的,或者直接start with 1=1不加限制

prior:prior關(guān)鍵字可以放在等號(hào)的前面,也可以放在等號(hào)的后面,表示的意義是不一樣的,比如 prior id = pid,就表示pid就是這條記錄的根節(jié)點(diǎn)了

二、業(yè)務(wù)場(chǎng)景

舉個(gè)例子,寫(xiě)條SQL:

t_user(用戶(hù)表),t_unit_info(單位表),意思是以單位編碼為"15803"的單位為根節(jié)點(diǎn),查找出其單位及其子單位的用戶(hù)信息

 select us.user_code, us.user_name
 from t_user us
 where exists (select 1
   from t_unit_info uinfo where 
   us.unit_code = uinfo.unit_code
   start with uinfo.unit_code = '15803'
   connect by prior uinfo.unit_code = uinfo.para_unit_code)

然后將prior換一下位置,發(fā)現(xiàn)只能查出單位編碼為"15803"對(duì)應(yīng)的單位,不能查子級(jí)單位

 select us.user_code, us.user_name
 from t_user us
 where exists (select 1
   from t_unit_info uinfo where 
   us.unit_code = uinfo.unit_code
   start with uinfo.unit_code = '15803'
   connect by uinfo.unit_code = prior uinfo.para_unit_code)

oracle 遞歸查詢(xún)start with connect by prior的用法和知識(shí)不僅僅這些,本博客只是簡(jiǎn)單記錄一下我所遇到的

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問(wèn)大家可以留言交流,謝謝大家對(duì)腳本之家的支持。

您可能感興趣的文章:
  • 深入sql oracle遞歸查詢(xún)
  • Oracle 11GR2的遞歸WITH子查詢(xún)方法
  • Oracle通過(guò)遞歸查詢(xún)父子兄弟節(jié)點(diǎn)方法示例
  • oracle SQL遞歸的使用詳解
  • oracle 使用遞歸的性能提示測(cè)試對(duì)比

標(biāo)簽:崇左 銅川 湖南 黃山 蘭州 湘潭 衡水 仙桃

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Oracle遞歸查詢(xún)start with connect by prior的用法》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢(xún)

    • 400-1100-266
    白朗县| 荥阳市| 浦北县| 宝清县| 凤城市| 延安市| 涞水县| 满城县| 德昌县| 醴陵市| 鄂伦春自治旗| 彭州市| 石景山区| 黔江区| 图们市| 秦皇岛市| 兰考县| 仪征市| 焦作市| 砚山县| 灵台县| 容城县| 朝阳县| 红安县| 璧山县| 无为县| 芦溪县| 鄂尔多斯市| 合江县| 东明县| 永嘉县| 台中市| 理塘县| 安陆市| 易门县| 遂川县| 平远县| 伽师县| 基隆市| 永定县| 抚州市|