यदि डेटाबेस SQL 2005/2008 है तो...
इसे प्राप्त करने का सबसे आसान तरीका एक सीटीई (कॉमन टेबल एक्सप्रेशन) का उपयोग करना है जिसे रिकर्स करने के लिए डिज़ाइन किया गया है।
WITH myCTE (Item_id, Depth)
AS
(
Select Item_ID, 0 as Depth From yourTable where Item_Parent=0
Union ALL
Select yourTable.Item_ID, Depth + 1
From yourTable
inner join myCte on yourTable.item_Parent = myCte.Item_Id
)
Select Item_id, Depth from myCTE
आउटपुट इस प्रकार है:
Item_Id Depth
1 0
2 0
3 1
4 1
5 2
इससे आप इसे अपनी इच्छानुसार फ़ॉर्मेट कर सकते हैं।