我有下表和值:
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
树的深度可以任意长。什么语句会返回这个?