आप इसके साथ तालिका में पूरी तरह से शामिल हो सकते हैं।
हालाँकि, आपको अवगत होना चाहिए कि आपका डिज़ाइन आपको पदानुक्रम के कई स्तरों की अनुमति देता है। चूंकि आप SQL सर्वर का उपयोग कर रहे हैं (2005 या उच्चतर मानते हुए), आप एक पुनरावर्ती CTE को अपनी ट्री संरचना प्राप्त कर सकते हैं।
अवधारणा तैयार करने का प्रमाण:
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');
प्रश्न 1 - नोड स्तर:
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