主頁 > 知識庫 > SQL處理多級分類,查詢結(jié)果呈樹形結(jié)構(gòu)

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

熱門標(biāo)簽:山西語音外呼系統(tǒng)價格 威海智能語音外呼系統(tǒng) 智能語音外呼系統(tǒng)哪個牌子好 溫州語音外呼系統(tǒng)代理 重慶防封電銷機(jī)器人供應(yīng)商 西安青牛防封電銷卡 南京電銷外呼系統(tǒng)運營商 北京辦理400電話多少 400電話申請需要開戶費嗎
這樣處理的弊端是:如果數(shù)據(jù)量大,子分類很多,達(dá)到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ù)量不大的分類,使用絕對無壓力
您可能感興趣的文章:
  • Javascript遍歷Html Table示例(包括內(nèi)容和屬性值)
  • 基于Java實現(xiàn)的圖的廣度優(yōu)先遍歷算法
  • JQuery $.each遍歷JavaScript數(shù)組對象實例
  • Java函數(shù)式編程(十一):遍歷目錄
  • php實現(xiàn)的樹形結(jié)構(gòu)數(shù)據(jù)存取類實例
  • Java遍歷輸出指定目錄、樹形結(jié)構(gòu)所有文件包括子目錄下的文件

標(biāo)簽:貸款群呼 金昌 河源 濟(jì)寧 黃山 新余 中衛(wèi) 宜春

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《SQL處理多級分類,查詢結(jié)果呈樹形結(jié)構(gòu)》,本文關(guān)鍵詞  SQL,處理,多級,分類,查詢,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《SQL處理多級分類,查詢結(jié)果呈樹形結(jié)構(gòu)》相關(guān)的同類信息!
  • 本頁收集關(guān)于SQL處理多級分類,查詢結(jié)果呈樹形結(jié)構(gòu)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章