Arkadaşlar merhaba.
Tree mantığıyla tutulmuş bir tablom var.Burada kurumlarımı tutuyorum. Sistemime giren bir kurum kendisinin ve kendisine bağlı kurum ve o kurumlarında tüm alt kurumlarının bilgilerini görmesi lazım.
VT yapım şöyle:
KurumID --- KurumAdı --- Kurum No --- BağlıOlduğuKurumNo
1 --- SSK --- 06100 --- null
2 --- SSK 1. Bölge --- 06101 --- 06100
3 --- SSK 2. Bölge --- 06102 --- 06100
4 --- Ankara SSK 1 Bölge --- 06103 --- 06101
Mesela SSK sisteme girdiği zaman alt birimlerininde dosyalarını ve
birimlerini görebilecek ama 2 nolu SSK 1. Bölge sisteme girdiği zaman
kendisini ve alt çocuğu olan 4 nolu Ankara SSK 1 Bölge Yazı İşleri ninde
bilgilerini ve birimini görebilecek.
Java kodu yazmadan oracle da bunun la ilgili bir komut var mı?
Teşekkürler..][/code]
Tree(Ağaç) Mantığında Veri Çekme
- vahapburhan
- Üye
- Mesajlar: 28
- Kayıt: 24 Tem 2004 11:42
- Konum: Elazığ
- İletişim:
Tree(Ağaç) Mantığında Veri Çekme
Yarın ölecekmiş gibi ahirete, hiç ölmeyecekmiş gibi dünyaya çalış..
Re: Tree(Ağaç) Mantığında Veri Çekme
Cross join gibi tek select te o tree yapıyı ala biliyorsun.Nasıl yazıldığını eski kodları açıp bakmam lazım.Bulursam tekrar yazarım.
-
- Üye
- Mesajlar: 1
- Kayıt: 18 May 2009 02:27
Re: Tree(Ağaç) Mantığında Veri Çekme
selam, eger hiyerarsik sorgu yapmak istiyorsanız asagıdaki gibi bi sorgu isinize yarayabilir
select lpad(' ',2*(level - 1)) || kurumadi "Kurum", kurumno, baglioldugukurumno
from kurum
start with baglioldugukurumno is null
connect by prior kurumno = baglioldugukurumno;
yada self join kullanabilirsiniz,
select k1.kurumadi, k2.kurumadi baglioldugukurum
from kurum k1 join kurum k2
on k1.baglioldugukurumno=k2.kurumno;
select lpad(' ',2*(level - 1)) || kurumadi "Kurum", kurumno, baglioldugukurumno
from kurum
start with baglioldugukurumno is null
connect by prior kurumno = baglioldugukurumno;
yada self join kullanabilirsiniz,
select k1.kurumadi, k2.kurumadi baglioldugukurum
from kurum k1 join kurum k2
on k1.baglioldugukurumno=k2.kurumno;
Re: Tree(Ağaç) Mantığında Veri Çekme
http://www.mevlutbecerikli.com/?p=105 adresinde örnekli açıklaması mevcut. Kolay gelsin