我有下表和值:
create table TreeTable (
ID int primary key,
ParentID int not null,
Name varchar(255) not null
)
insert into TreeTable([ID], [ParentID], [Name]) values
(1, 0, 'rootA'),
(2, 1, 'rootAchildA'),
(3, 1, 'rootAchildB'),
(4, 2, 'rootAchildAchildA'),
(5, 2, 'rootAchildAchildB'),
(6, 3, 'rootAchildBchildA'),
(7, 3, 'rootAchildBchildB');
(8, 0, 'rootB'),
(9, 8, 'rootBchildA'),
(10, 8, 'rootBchildB');
我想编写一个 T-SQL 语句,该语句将返回具有根 ID 的每个根的所有子节点;那是,
[Name] [RootID]
'rootAchildA' 1
'rootAchildB' 1
'rootAchildAchildA' 1
'rootAchildAchildB' 1
'rootAchildBchildA' 1
'rootAchildBchildB' 1
'rootBchildA' 8
'rootBchildB' 8
树的深度可以任意长。什么语句会返回这个?