sqlserver递归,sqlserver递归查询层级
sqlserver 递归查询
CREATE TABLE #tb1(stuId INT,stuName VARCHAR(30),teaId INT);
在甘谷等地区,都构建了全面的区域性战略布局,加强发展的系统性、市场前瞻性、产品创新能力,以专注、极致的服务理念,为客户提供成都网站设计、成都网站建设 网站设计制作按需定制,公司网站建设,企业网站建设,高端网站设计,网络营销推广,外贸网站制作,甘谷网站建设费用合理。
INSERT INTO #tb1 (stuId,stuName,teaId)
VALUES(1,'zhou',0),(2,'kong',0),(3,'hong',2),(4,'zhang',1),(5,'liu',4),
(6,'zhao',5),(7,'zheng',6),(8,'wei',7)
;WITH cte AS (
SELECT t.stuId,t.stuName,t.teaId FROM #tb1 AS t
WHERE t.stuId=8
UNION ALL
SELECT t.stuId,t.stuName,t.teaId FROM cte AS c
JOIN #tb1 AS t ON c.teaId=t.stuId
)
SELECT * FROM cte
sqlserver递归算法
With T
As
(
Select * From TB Where newNo=103
Union All
Select TB.* From TB Inner Join T on TB.newNo=T.oldNo
)
Select * From T
怎么用sqlserver实现递归删除目录结构
WITH DirectReports(ManagerID, EmployeeID, Title, EmployeeLevel) AS ( SELECT ManagerID, EmployeeID, Title, 0 AS EmployeeLevel FROM dbo.MyEmployees WHERE ManagerID IS NULL UNION ALL --主要是在此,增加一个union all SELECT e.ManagerID, e.EmployeeID, e.Title, EmployeeLevel + 1 FROM dbo.MyEmployees AS e INNER JOIN DirectReports AS d -- 在此调用自身,就可以实现递归了 ON e.ManagerID = d.EmployeeID ) SELECT ManagerID, EmployeeID, Title, EmployeeLevel FROM DirectReports ORDER BY ManagerID;
sqlserver函数中引用递归
set @p_b = (select fid from w_Storage_Depository where fid in(select fid from dbo.jt_base_company where bj=1))
改成
select @p_b =fid from w_Storage_Depository where fid in(select fid from dbo.jt_base_company where bj=1)
网站名称:sqlserver递归,sqlserver递归查询层级
标题来源:http://myzitong.com/article/hcseio.html