: Kod tarafında dngü ile yapıyorum ancak bu performans sıkıntısı yaratmakta. t-sql tarafında nasıl bir sorgu yazmak lazım ki en son kıvrımda olan kategori_id numarasını verince adım adım en tepesinde olan kategori adini versin bize? id adi ust_id 1 bilgisayar 0 2 araba 0 3 BMW 2 4 3.1 3 5 3.1 yeniKasa 4 5 numaralı id'yi prosedure vereceğiz o da bize en üst kıvrıma kadar gidecek işte.. Pls Help Me! Dngü yerine recursive method ile belki daha hızlı yapabilirsin ancak her halükarda ParetnID'ye gre ChildNode'ları select etmen gerekecek. herkes programcı olmak zorunda değildir, lütfen bir zorunluluk gibi programlama dilleri ğrenmeye çalışmayın. yabancı dil filan ğrenin amq.// s. kimin etini yerim, kasaba minnet etmem.// ince düşünene kalın girer.//

şuan ki haliyle tek sorguda istediğini yapabilmen mümkün değil gibi. derinlik diye bi alanın daha olsaydı onun sayısı kadar tabloyu join edip çıkartabilirdin istediğin sonucu Bittik biz bittik

Kod tarafında dngü ile yapıyorum ancak bu performans sıkıntısı yaratmakta. t-sql tarafında nasıl bir sorgu yazmak lazım ki en son kıvrımda olan kategori_id numarasını verince adım adım en tepesinde olan kategori adini versin bize? id adi ust_id 1 bilgisayar 0 2 araba 0 3 BMW 2 4 3.1 3 5 3.1 yeniKasa 4 5 numaralı id'yi prosedure vereceğiz o da bize en üst kıvrıma kadar gidecek işte.. Pls Help Me!

id=5 çağırdığında ne olmasını istiyorsun? anlamadım hocam

Alttaki t-sql ile sorun çzüldü Çzüm: Common Table Expressions , Recursive WITH Kat AS ( -- Base Method SELECT KategoriID, KategoriAdi, UstKatID, 1 as HierarchyLevel FROM Kategori WHERE KategoriID=31 UNION ALL SELECT k. KategoriID, k. KategoriAdi, k. UstKatID, k2. HierarchyLevel + 1 AS HierarchyLevel FROM Kategori k INNER JOIN Kat k2 ON k2. UstKatID = k. KategoriID ) SELECT FROM Kat ORDER BY HierarchyLevel desc