Możesz z nim idealnie dołączyć do stołu.
Należy jednak pamiętać, że projekt pozwala na stosowanie wielu poziomów hierarchii. Ponieważ używasz SQL Server (zakładając 2005 lub nowszy), możesz mieć rekurencyjne CTE, aby uzyskać strukturę drzewa.
Przygotowanie dowodu koncepcji:
declare @YourTable table (id int, parentid int, title varchar(20))
insert into @YourTable values
(1,null, 'root'),
(2,1, 'something'),
(3,1, 'in the way'),
(4,1, 'she moves'),
(5,3, ''),
(6,null, 'I don''t know'),
(7,6, 'Stick around');
Zapytanie 1 - Poziomy węzłów:
with cte as (
select Id, ParentId, Title, 1 level
from @YourTable where ParentId is null
union all
select yt.Id, yt.ParentId, yt.Title, cte.level + 1
from @YourTable yt inner join cte on cte.Id = yt.ParentId
)
select cte.*
from cte
order by level, id, Title