Anda dapat dengan sempurna bergabung dengan tabel itu sendiri.
Namun, Anda harus menyadari bahwa desain Anda memungkinkan Anda memiliki beberapa tingkat hierarki. Karena Anda menggunakan SQL Server (dengan asumsi 2005 atau lebih tinggi), Anda dapat meminta CTE rekursif untuk mendapatkan struktur pohon Anda.
Bukti persiapan konsep:
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');
Kueri 1 - Level Node:
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