Verdiğiniz örnekteki gibi denedim, sadece bir alt seviyede bağlı olan kayıtları topluyor, benim istediğim tüm alt dallardakileri toplaması.
Uygar UZUNHASAN yazmış: > Tabloya "A" diyorum, istediğiniz sanırım şu: > > SELECT id, parent_id, kod, ad, sayi, toplam_sayi > FROM > (Select parent_id as pid, sum(sayi)as toplam_sayi FROM A GROUP BY > parent_id) AS B, A > WHERE B.pid=A.parent_id > > Uygar UZUNHASAN > http://www.nobelyazilim.com/ > > > > ------------------------------------------------------------------------ > *From:* Timuçin Kızılay <[email protected]> > *To:* Özgür yazılımlarla çeşitli dillerde yazılım geliştirme > <[email protected]> > *Sent:* Wed, April 14, 2010 1:56:09 PM > *Subject:* [Linux-programlama] SQL sorgusu. > > Elimde şuna benzer, ağaç yapısında bir tablo var: > > id int, > parent_id int, > kod varchar(20), > ad varchar(50), > sayi float > > > bu tablodaki kayıtlar id ve parent_id alanlarından birbirine bağlı > olarak ağaç yapısında. > Şimdi benim bu tablodan almaya çalıştığım bilgi, herhangi bir kaydın tüm > bağlı kayıtlarındaki sayi alanının toplamı. > > kod, ad, sayi, alt_toplam_sayı, toplam_sayi şeklinde satırları olan bir > sorgu yapamaya çalışıyorum ama tek bir sorgu ile bunu almayı > başaramadım. istemci tarafında recursive bir fonksiyon ile alabiliyorum > ama kayıt sayısı arttığında bu recursive fonksiyon içinden tekrar tekrar > sorgulamak çok yavaşlayacak diye düşünüyorum. Bunun kolay bir yolu var > mıdır? > > Dil olarak python ve sqlalchemy kütüphanesi kullanıyorum ama burada > merak ettiğim olay algoritma ile ilgili bu yüzden herhangi bir dille ya > da sql sorgusu olarak yanıt verirseniz de bir şekilde python'a çeviririm. _______________________________________________ Linux-programlama mailing list [email protected] https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: http://liste.linux.org.tr/kurallar.php
