欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

oracle 層次化查詢(行政區(qū)劃三級級聯(lián))

 更新時間:2009年07月25日 10:52:21   作者:  
現(xiàn)在將上面的行政區(qū)劃按代碼分為三個級別:?。ê笏奈粸?)/市(后兩位為0)/縣,同時分別標(biāo)出他們的級別,這樣的話,便于后期根據(jù)不同的級別查詢。
前提:
數(shù)據(jù)庫表DM_xzqh樣例(部分):
復(fù)制代碼 代碼如下:

DM MC
230000 黑龍江省
230100 哈爾濱市
230101 市轄區(qū)
230102 道里區(qū)
232700 大興安嶺
230103 南崗區(qū)
230104 道外區(qū)
230108 平房區(qū)
230109 松北區(qū)
230110 香坊區(qū)
230111 呼蘭區(qū)
230112 阿城區(qū)
230123 依蘭縣
238000 農(nóng)墾分局
230124 方正縣
230125 賓縣
230126 巴彥縣
230127 木蘭縣
230128 通河縣
230129 延壽縣
230182 雙城市
230183 尚志市

現(xiàn)在將上面的行政區(qū)劃按代碼分為三個級別:?。ê笏奈粸?)/市(后兩位為0)/縣,同時分別標(biāo)出他們的級別,這樣的話,便于后期根據(jù)不同的級別查詢。

首先,根據(jù)上面表拓展出新的一行sjbm,該行用于表示該行政區(qū)劃所屬的上級行政區(qū)劃。具體代碼如下:
復(fù)制代碼 代碼如下:

select t.dm,t.mc,case
when substr(t.dm,3)='0000' then 1
when substr(t.dm,5)='00' then to_number(substr(t.dm,1,2)||'0000')
when substr(t.dm,5)!='00' then to_number(substr(t.dm,1,4)||'00')
else 0
end sjbm from dm_xzqh t

結(jié)果如下:
序號 DM MC SJBM
1 230000 黑龍江省 1
2 230100 哈爾濱市 230000
3 230101 市轄區(qū) 230100
4 230102 道里區(qū) 230100
5 232700 大興安嶺 230000
6 230103 南崗區(qū) 230100
7 230104 道外區(qū) 230100
8 230108 平房區(qū) 230100
9 230109 松北區(qū) 230100
10 230110 香坊區(qū) 230100
11 230111 呼蘭區(qū) 230100
12 230112 阿城區(qū) 230100
13 230123 依蘭縣 230100
14 238000 農(nóng)墾分局 230000
15 230124 方正縣 230100
16 230125 賓縣 230100
17 230126 巴彥縣 230100
18 230127 木蘭縣 230100
19 230128 通河縣 230100
20 230129 延壽縣 230100
21 230182 雙城市 230100
22 230183 尚志市 230100
然后,就可以利用oracle的層次關(guān)系將該查詢出的數(shù)據(jù)分級了,具體代碼如下:
復(fù)制代碼 代碼如下:

select level,dm,mc,sjbm from
(select t.dm,t.mc,case
when substr(t.dm,3)='0000' then 1
when substr(t.dm,5)='00' then to_number(substr(t.dm,1,2)||'0000')
when substr(t.dm,5)!='00' then to_number(substr(t.dm,1,4)||'00') end sjbm from dm_xzqh t)
[where level=2 ]--該條件語句用于查詢具體的每一個級別的行政區(qū)劃
start with sjbm=1
connect by prior dm=sjbm
[order by level];

結(jié)果如下:
序號 level DM MC SJBM
1 1 230000 黑龍江省 1 //省 ,level->1
2 2 230100 哈爾濱市 230000//市,level->2
3 3 230101 市轄區(qū) 230100//縣,level->3
4 3 230102 道里區(qū) 230100
5 3 230103 南崗區(qū) 230100
6 3 230104 道外區(qū) 230100
7 3 230108 平房區(qū) 230100
8 3 230109 松北區(qū) 230100
9 3 230110 香坊區(qū) 230100
10 3 230111 呼蘭區(qū) 230100
11 3 230112 阿城區(qū) 230100
12 3 230123 依蘭縣 230100
13 3 230124 方正縣 230100
14 3 230125 賓縣 230100
15 3 230126 巴彥縣 230100
16 3 230127 木蘭縣 230100
17 3 230128 通河縣 230100
18 3 230129 延壽縣 230100
19 3 230182 雙城市 230100
20 3 230183 尚志市 230100
21 3 230184 五常市 230100
22 2 232700 大興安嶺地區(qū) 230000

相關(guān)文章

  • 如何利用Oracle命令解決函數(shù)運(yùn)行錯誤

    如何利用Oracle命令解決函數(shù)運(yùn)行錯誤

    這篇文章主要給大家介紹了關(guān)于如何利用Oracle命令解決函數(shù)運(yùn)行錯誤的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用Oracle具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • oracle多表簡單查詢實(shí)例代碼

    oracle多表簡單查詢實(shí)例代碼

    當(dāng)查詢的數(shù)據(jù)并不是來源一個表時,需要使用多表鏈接操作完成查詢,下面這篇文章主要給大家介紹了關(guān)于oracle多表簡單查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • Oracle統(tǒng)計(jì)信息的導(dǎo)出導(dǎo)入測試示例詳解

    Oracle統(tǒng)計(jì)信息的導(dǎo)出導(dǎo)入測試示例詳解

    這篇文章主要給大家介紹了關(guān)于Oracle統(tǒng)計(jì)信息的導(dǎo)出導(dǎo)入測試的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-12-12
  • Oracle層次查詢和with函數(shù)的使用示例

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

    下面我跟大家分享下我的心得,也就是基于這種設(shè)計(jì)怎么做數(shù)形圖,簡單的做法就是查詢出一個list集合就可以,要怎么辦呢先來看下我的數(shù)據(jù)表
    2013-07-07
  • 如何使用log miner分析oracle日志

    如何使用log miner分析oracle日志

    日常生活中,我們經(jīng)常因?yàn)椴僮魇д`丟失數(shù)據(jù)或者是更改數(shù)據(jù),如何進(jìn)行恢復(fù)吶?這篇文章就是幫助我們解決這一困擾,需要的朋友可以參考下
    2015-07-07
  • oracle獲取上一旬的開始時間和結(jié)束時間的實(shí)現(xiàn)函數(shù)

    oracle獲取上一旬的開始時間和結(jié)束時間的實(shí)現(xiàn)函數(shù)

    本文為大家介紹下oracle如何獲取上一旬的開始時間和結(jié)束時間,實(shí)現(xiàn)函數(shù)如下,感興趣的朋友可以參考下
    2013-09-09
  • oracle實(shí)現(xiàn)根據(jù)字段分組排序,取其第一條數(shù)據(jù)

    oracle實(shí)現(xiàn)根據(jù)字段分組排序,取其第一條數(shù)據(jù)

    這篇文章主要介紹了oracle實(shí)現(xiàn)根據(jù)字段分組排序,取其第一條數(shù)據(jù)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 解析Oracle查詢和刪除JOB的SQL

    解析Oracle查詢和刪除JOB的SQL

    本篇文章是對Oracle查詢和刪除JOB的SQL的實(shí)現(xiàn)方法進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-07-07
  • oracle中讀寫blob字段的問題解析

    oracle中讀寫blob字段的問題解析

    這篇文章以程序?qū)嵗f明通過JDBC操縱Oracle數(shù)據(jù)庫LOB類型字段的幾種情況
    2013-09-09
  • oracle date 類型字段的處理方法

    oracle date 類型字段的處理方法

    本文主要介紹oracle date 類型字段的處理方法,講解的比較全面,需要的朋友可以參考一下。
    2016-06-06

最新評論