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

首頁 > 數(shù)據(jù)庫 > SQL Server > 正文

SQL處理多級分類,查詢結(jié)果呈樹形結(jié)構(gòu)

2024-08-31 00:57:17
字體:
供稿:網(wǎng)友
這樣處理的弊端是:如果數(shù)據(jù)量大,子分類很多,達到4級以上,這方法處理極端占用數(shù)據(jù)庫連接池
對性能影響很大。

如果用SQL下面的CTE遞歸處理的話,一次性就能把結(jié)果給查詢出來,而且性能很不錯
比用程序處理(數(shù)據(jù)量很大的情況),臨時表性能更好,更方便

復(fù)制代碼 代碼如下:


with area as(
select *,id px,cast(id as nvarchar(4000)) px2 from region where parentid=0
union all
select a.*,b.px,b.px2+ltrim(a.region_id) from region a join area b on a.parentid=b.id
)select * from area order by px,px2



可以查詢出結(jié)果—-所有分類及相應(yīng)分類下子分類
id title parentid
1 廣東省 0
2 廣州 1
3 白云區(qū) 2
4 深圳 1
5 湖南省 0
6 長沙 5
7 株洲 5

復(fù)制代碼 代碼如下:


with area as(
select * from region where parentid=1
union all
select a.* from region a join area b on a.parentid=b.id
)select * from area


可以查詢出結(jié)果—-指定分類及相應(yīng)分類下子分類
id title parentid
1 廣東省 0
2 廣州 1
3 白云區(qū) 2


性能分析:
對于一個3500條地區(qū)記錄的數(shù)據(jù)表,其中有省,市,縣3級
查詢用時要1秒,視覺上感覺有點點慢,但不影響
數(shù)據(jù)量不大的分類,使用絕對無壓力
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 平山县| 将乐县| 葫芦岛市| 石渠县| 含山县| 民和| 吴旗县| 卢湾区| 金川县| 西平县| 台北县| 乌拉特中旗| 衢州市| 鱼台县| 巢湖市| 睢宁县| 阿克苏市| 密山市| 望奎县| 鄂伦春自治旗| 怀集县| 石城县| 安顺市| 浦东新区| 边坝县| 德化县| 潜江市| 潜山县| 蓝田县| 武平县| 龙江县| 西平县| 象山县| 武平县| 东乌珠穆沁旗| 平邑县| 松溪县| 工布江达县| 耒阳市| 雷波县| 正安县|