SQL语句实现递归

        

1 WITH TempDeptment ([ID],[PID],[DeptName],[Conjunction]) AS
2 (
3     SELECT [ID],[PID],[DeptName], CAST([DeptName] AS Nvarchar(1000)) FROM [dbo].[Deptment] WHERE [PID] = 0
4     UNION ALL
5     SELECT d.[ID], d.[PID], d.[DeptName], CAST(([Conjunction] + N'/' + d.[DeptName]) AS Nvarchar(1000))    FROM TempDeptment AS td,[dbo].[Deptment] AS d WHERE td.[ID] = d.[PID]
6 )
7 SELECT [ID], [Conjunction] FROM TempDeptment

posted @ 2014-07-22 15:59  波波乐园  阅读(490)  评论(0编辑  收藏  举报