Sie können sich damit perfekt an den Tisch setzen.
Sie sollten sich jedoch bewusst sein, dass Ihr Design mehrere Hierarchieebenen zulässt. Da Sie SQL Server verwenden (vorausgesetzt 2005 oder höher), können Sie Ihre Baumstruktur mit einem rekursiven CTE abrufen.
Proof-of-Concept-Erstellung:
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');
Abfrage 1 – Knotenebenen:
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