不用遞迴實現樹形結構的一種方法
主要的技巧在Level(帖子回覆深度)的操作上
SunADM 於 2000.07.26
____________________________________________
演示表的結構
____________________________________________
表名:BBS
欄位
資料型別
說明
ID 自動編號
RootID Int 根帖ID,本身為根帖則RootID = ID
FID Int 父帖ID,上一層帖子的ID,如是根帖則FID = NULL
Level SmallInt 根帖Level=0,其他依據回覆的深度遞增
Subject Char 主題
____________________________________________
SQL 語句(須據此建立記錄集 rs):
____________________________________________
SELECT *
FROM BBS
ORDER BY BBS.RootID DESC, BBS.Level, BBS.FID, BBS.[ID] DESC
____________________________________________
顯示樹形結構的有關語句:
____________________________________________
Level = 0
Response.Write "
Next
End If
If rs("Level") > level Then
Response.Write "
__________________________________________________________
後記:原來我一直用遞迴做這事,因為覺得主要的速度瓶頸該是在
分頁上面,所以一直……呵呵!直到今天廖家遠當頭棒喝……
希望對大家有所幫助(扔幾塊玉過來吧!準備好了幾個麻袋等著那!:P)
Last Modified 2K-07-26 13:14[@more@]
SunADM 於 2000.07.26
____________________________________________
演示表的結構
____________________________________________
表名:BBS
欄位
資料型別
說明
ID 自動編號
RootID Int 根帖ID,本身為根帖則RootID = ID
FID Int 父帖ID,上一層帖子的ID,如是根帖則FID = NULL
Level SmallInt 根帖Level=0,其他依據回覆的深度遞增
Subject Char 主題
____________________________________________
SQL 語句(須據此建立記錄集 rs):
____________________________________________
SELECT *
FROM BBS
ORDER BY BBS.RootID DESC, BBS.Level, BBS.FID, BBS.[ID] DESC
____________________________________________
顯示樹形結構的有關語句:
____________________________________________
Level = 0
Response.Write "
- "
While NOT rs.EOF
If rs("Level") < level Then
For i = 1 To Level-1
Response.Write "
Next
End If
If rs("Level") > level Then
Response.Write "
- "
- " & rs("Subject") & " "
End If
Response.Write "
level = rs("Level")
rs.MoveNext
Wend
Response.Write "
__________________________________________________________
後記:原來我一直用遞迴做這事,因為覺得主要的速度瓶頸該是在
分頁上面,所以一直……呵呵!直到今天廖家遠當頭棒喝……
希望對大家有所幫助(扔幾塊玉過來吧!準備好了幾個麻袋等著那!:P)
Last Modified 2K-07-26 13:14[@more@]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/631872/viewspace-825306/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Vue遞迴元件實現樹形結構選單Vue遞迴元件
- Java實現遞迴查詢樹結構Java遞迴
- 樹結構表遞迴查詢在ORACLE和MSSQL中的實現方法遞迴OracleSQL
- 遞迴遍歷樹狀結構優雅實現遞迴
- 通用-遞迴樹結構遞迴
- 樹結構表遞迴查詢在ORACLE和MSSQL中的實現方法 [續]遞迴OracleSQL
- PHP 樹-不需要遞迴的實現方法PHP遞迴
- 關於樹型結構資料遞迴查詢,轉非遞迴查詢的實現遞迴
- [Swing]樹形結構的實現
- JS遞迴過濾樹形結構陣列物件--模糊查詢JS遞迴陣列物件
- 遞迴函式-樹形列表遞迴函式
- 如何快速、且易懂編寫Java遞迴生成樹形選單結構Java遞迴
- 使用遞迴演算法結合資料庫解析成java樹形結構遞迴演算法資料庫Java
- python實現二叉樹及其七種遍歷方式(遞迴+非遞迴)Python二叉樹遞迴
- 資料結構-樹以及深度、廣度優先遍歷(遞迴和非遞迴,python實現)資料結構遞迴Python
- 【資料結構】二叉樹遍歷(遞迴+非遞迴)資料結構二叉樹遞迴
- 兩種遞迴方式實現迴文字遞迴
- 【資料結構】遞迴實現連結串列逆序資料結構遞迴
- python 遞迴樹狀結構 和 排序Python遞迴排序
- 資料結構初階--二叉樹(前中後序遍歷遞迴+非遞迴實現+相關求算結點實現)資料結構二叉樹遞迴
- 【Java資料結構與演算法筆記(二)】樹的四種遍歷方式(遞迴&非遞迴)Java資料結構演算法筆記遞迴
- 如何優雅的使用javascript遞迴畫一棵結構樹JavaScript遞迴
- 遞迴樹形查詢所有分類遞迴
- Mysql 實現樹狀遞迴查詢MySql遞迴
- Vue遞迴元件+Vuex開發樹形元件Tree--遞迴元件Vue遞迴元件
- js樹型結構資料簡易遞迴JS遞迴
- 樹形結構
- [資料結構]二叉樹的前中後序遍歷(遞迴+迭代實現)資料結構二叉樹遞迴
- 遍歷二叉樹的遞迴與非遞迴程式碼實現二叉樹遞迴
- 二叉樹的四種遍歷(遞迴與非遞迴)二叉樹遞迴
- 全域性元件實現遞迴樹,避免迴圈引用元件遞迴
- 一個簡單的樹形結構
- [java] 二叉樹的後序遍歷(遞迴與非遞迴實現)Java二叉樹遞迴
- 資料結構之二叉樹遞迴操作資料結構二叉樹遞迴
- layui樹形結構UI
- java樹形結構Java
- php 遞迴函式的三種實現方式PHP遞迴函式
- 遞迴求解二叉樹任意一結點的深度遞迴二叉樹