همیشه از این حالت سلسله مراتبی یا Hierarchical , recursive خوشم میومد
یه مثال خیلی ساده برای یک چنین ساختاری در قالب TSQL و sql بصورت زیر هست که میتونید عین عبارت را در sql server کپی و از نتیجه استفاده کنید
البته میتونید با کمیی تغییرات اونو برای منوهای تودرتو ، سلسله مراتبی و treeview نیز استفاده کنید
declare @childId int
set @childId = 184
declare @tempTable table(parent int, child int)
insert into @tempTable values(190, 192)
insert into @tempTable values(192, 180)
insert into @tempTable values(180, 185)
insert into @tempTable values(185, 184)
insert into @tempTable values(190, 191)
insert into @tempTable values(191, 197)
insert into @tempTable values(197, 200)
declare @currentItem int
set @currentItem = @childId
declare @output varchar(max)
set @output = cast(@currentItem as varchar)
while (exists(select 1 from @tempTable where child = @currentItem))
begin
select
@currentItem = parent
from
@tempTable
where
child = @currentItem
set @output = cast(@currentItem as varchar) + ‘, ‘ + @output
end
select @output