程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SqlServer數據庫 >> 關於SqlServer >> SQLSERVER2005 中樹形數據的遞歸查詢

SQLSERVER2005 中樹形數據的遞歸查詢

編輯:關於SqlServer
問題描述。借用了adinet的問題。參見:http://www.jb51.net/article/28670.htm

今天做項目遇到一個問題,

有產品分類A,B,C頂級分類,

期中A下面有a1,a2,a3子分類.

但是a1可能共同屬於A和B,然後我的數據庫是這樣設計的  

      id           name         parnet   1 A 0 2 B 0 3 a1 1,2

如果想要查詢A的所有子類的話就要查詢parent中包含1的,所以就萌生了這個辦法.呵呵,
解決方案
代碼如下:

with cte as
(select * from tb where id='1'
union all
select tb.* from tb join cte on charindex(cast(cte.id as varchar(10)),tb.parentid)>0)
select * from cte

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved