C 實現資料庫的遞迴查詢

2021-04-06 23:51:59 字數 725 閱讀 1877

表結構如下:

標識號  名稱     上級標識號

mid      mname        mparentid

1        選單一      0

2        選單二      1

3        選單三      1

4        選單四      2

5        選單五      3

要用遞迴程式實現某一標識號(包括本身)下的所有選單,要實現這個程式,我們這裡取出所有符合的選單標識號,用「,」連線成字串,實現的方法如下:

///

/// 取得選單下的所有下級選單

///

///

///

///

public string queryallmenu(int mid, sqlconnection conn)

if(conn.state != connectionstate.closed)

conn.close();

}catch

return result; 

}private string menuchild(int parentid, sqlconnection conn)

if(conn.state != connectionstate.closed)

conn.close();

}catch

return result;

}

資料庫遞迴查詢

今天工作看同事 用到了start with.connect by prior,不知道什麼意思,查詢了一些資料,以下是比較好理解的。oracle中的select語句可以用start with.connect by prior子句實現遞迴查詢,connect by 是結構化查詢中用到的,其基本語法是 s...

如何使用資料庫實現遞迴查詢

sql server 2005開始,我們可以直接通過cte來支援遞迴查詢,cte即公用表表示式 公用表表示式 cte 是一個在查詢中定義的臨時命名結果集將在from子句中使用它。每個cte僅被定義一次 但在其作用域內可以被引用任意次 並且在該查詢生存期間將一直生存。可以使用cte來執行遞迴操作。建立...

關於資料庫的遞迴查詢

1 oracle 以scott.emp表舉例 empno是人員編號,mgr是上級領導 也就是上級人員編碼 1 從上到下查詢 該查詢查詢員工jones下屬所有的員工 select emp.from emp start with ename jones connect by mgr prior empn...

資料庫中的遞迴查詢

最近工作中用到了遞迴查詢,順便做下備忘 1.sql2005中的cte查詢 with cte aaaaa,bbbbb,ccccc as 查詢id為411321150的資料 select id as aaaaa,parent as bbbbb,name as ccccc from regioninfo ...

資料庫遞迴查詢(CET)

if object id ta isnotnull droptable ta go createtableta id int,name nvarchar 4 parentid nvarchar 2 go insertintota select1,河北省 0 unionall select2,邢臺市 ...