Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi
+1 oy
22 gösterim

Oracle veri tabanında lag(..) over (partion by ..)  ne iş yapar bilen var mı?

Veri Tabanı kategorisinde (1.7k puan) sordu

1 cevap

+2 oy
 
En İyi Cevap

Analitik fonksiyonlardan birisi oluyor bu vatandaş.

Bir tablo var mesela elinde içinde aylar var. Ocak, Şubat, Mart, Nisan, Mayıs. Bu tablodaki kayıtlar içinden bir sorgu çekeceksin ve OCAK->ŞUBAT, ŞUBAT->MART, MART->NİSAN, NİSAN->MAYIS şeklinde bilgi getireceksin. o zaman lag kullanıyorsun. Kaydın kendinden önceki olan diğer kaydı getirir.

AylarNo
Ocak1
Şubat2
Mart3
Nisan4
Mayıs5

SELECT aylar, no,
LAG (aylar,1) OVER (ORDER BY no) AS onceki_ay || '->'|| aylar FROM ay_tablosu;

AylarNoOnceki Ay
Ocak1->Ocak
Şubat2Ocak->Şubat
Mart3Şubat->Mart
Nisan4Mart->Nisan
Mayıs5Nisan->Mayıs

Şeklinde bir sonuç olacak.

(3.3k puan) cevapladı
seçti

İlgili sorular

+2 oy
3 cevap 347 gösterim
347 gösterim 17 Aralık 2015 Veri Tabanı kategorisinde tolga (1.7k puan) sordu
0 oy
1 cevap 11 gösterim
0 oy
1 cevap 35 gösterim
0 oy
1 cevap 256 gösterim
256 gösterim 7 Ocak 2017 Veri Tabanı kategorisinde kenan (3.3k puan) sordu
0 oy
1 cevap 197 gösterim
197 gösterim 21 Aralık 2016 Veri Tabanı kategorisinde kenan (3.3k puan) sordu
...