成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

SQL如何求解省市區(qū)中的遞歸問題?

數(shù)據(jù)庫 其他數(shù)據(jù)庫
遞歸是指程序調用自身的一種編程技巧,在SQL中也有遞歸查詢。下面我們通過一個省市區(qū)的示例來講解遞歸查詢的用法。

遞歸

遞歸是指程序調用自身的一種編程技巧,在SQL中也有遞歸查詢。下面我們通過一個省市區(qū)的示例來講解遞歸查詢的用法。

問題

有如下一張表City,

圖片圖片

希望得到如下結果

圖片圖片

該如何寫這個查詢?

問題分析

我們從上面的問題中發(fā)現(xiàn),省市區(qū)全部在同一列中,而他們的ParentID有某種聯(lián)系。仔細看市一級的ParentID正好是省的ID,而區(qū)一級的ParentID正好是市的ID,這完全符合我們遞歸定義。

示例代碼

根據(jù)我們上面的分析我們先寫出遞歸部分

--遞歸部分
;WITH CTE AS (
    SELECT ID,NAME,ParentId,1 AS Level FROM City WHERE parentId=0
    UNION ALL
    SELECT t.id,t.NAME,t.parentId,cte.Level+1 AS Level FROM City t
     JOIN CTE ON t.parentId=CTE.id
)
SELECT * FROM CTE;

遞歸查詢寫完后,可以查看一下遞歸部分CTE里面的內容

圖片圖片

然后我們只需要將省市區(qū)一一列出來即可,注意下面的這段代碼要和上面的遞歸部分一起執(zhí)行。

SELECT 
    t1.name AS [一級地名]
    ,t2.name AS [二級地名]
    ,t3.name AS [三級地名]
FROM 
(SELECT * FROM CTE WHERE LEVEL=1) AS t1 
INNER JOIN 
(SELECT * FROM CTE WHERE LEVEL=2) AS t2 ON t1.id=t2.parentId
INNER JOIN
(SELECT * FROM CTE WHERE LEVEL=3) AS t3 ON t2.id=t3.parentId
ORDER BY 1,2,3

結果如下:

圖片圖片

感興趣的小伙伴可以動手試一下。

責任編輯:武曉燕 來源: SQL數(shù)據(jù)庫開發(fā)
相關推薦

2021-04-25 09:42:40

SQL遞歸SQL Server

2021-08-03 07:40:47

SQL年份語句

2020-12-03 15:00:47

區(qū)塊鏈互聯(lián)網(wǎng)

2024-08-08 15:25:38

2023-08-29 09:46:12

SQLCTE遞歸

2020-04-24 12:48:01

新基建物聯(lián)網(wǎng)IOT

2022-03-15 08:36:46

遞歸查詢SQL

2020-03-05 12:22:07

物聯(lián)網(wǎng)基建IOT

2020-03-06 16:57:24

基建GDP

2021-08-12 07:49:24

SQL遞歸用法

2021-09-10 18:47:20

華為人工智能

2010-10-11 09:05:40

SQL Server

2021-04-09 10:37:40

SQL Server數(shù)據(jù)庫排名

2021-11-09 06:55:03

SQLServer排序

2010-06-11 09:13:20

openSUSE 網(wǎng)卡

2010-06-11 13:05:41

openSUSE視頻

2011-08-19 14:38:22

SQL Server 2008遞歸查詢

2021-11-19 08:12:45

SQL重疊數(shù)據(jù)

2010-06-09 13:03:00

Opensuse分區(qū)
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 久久精品一级 | 999久久久久久久 | 国产一级一级国产 | 日韩精品在线一区 | 91在线一区 | 色视频在线观看 | 成人激情免费视频 | 亚洲综合大片69999 | 成av在线 | 欧美精品一区二区三区在线 | 伊人久久综合影院 | 亚洲精品久 | 宅男噜噜噜66一区二区 | 99久久精品国产一区二区三区 | 久久精品国产亚洲一区二区三区 | 99福利视频 | 美日韩一区二区 | 国产传媒| 欧美日韩国产一区二区三区 | 成人片网址 | 国产在线a视频 | 欧美日韩中文字幕在线播放 | 99精品国产成人一区二区 | 91精品国产91久久久久久三级 | 国产精品国产精品国产专区不蜜 | 亚洲国产精品一区二区三区 | 最新国产视频 | 欧美亚洲综合久久 | 国产成人免费视频网站视频社区 | 四虎影院在线播放 | 黄色一级大片在线免费看产 | 久久婷婷麻豆国产91天堂 | 久久精品久久久久久 | 本道综合精品 | 久久在线| 亚洲成人在线视频播放 | www天天操 | 亚洲国产精品一区二区三区 | 视频一区二区国产 | 精品国产乱码久久久久久牛牛 | 日韩中文字幕久久 |