Arama butonu
2
Cevap
429
Tıklama
0
Öne Çıkarma
Tablo sonuna gelince başa dönsün?(sql)
N
18 yıl
Çavuş
Konu Sahibi

Arkadaşlar mysql veri tabanı kullanıyorum ve yaptığım sorgulamada belirttiğim bir noktadan itibaren 10 kişi nin gelmesini istiyorum.Normalde bir sorun yok fakat elimde 100 kişi olduğunu düşünelim 98. kişiden itibaren listeleme yapılması istenirse başa dönmesini ve başdan da 8 kişiyi daha gostermesini istiyorum bunun için kullanmam gereken sql komutu var mı ?
örnek verirseniz sevinirim cevap verenlere şimdiden çok teşekkurler...



A
18 yıl
Yüzbaşı

Şöyle bir sey yapabilirsin. Önce tablodaki kayıt sayısını alırsın. Sonra belirttiğin nokta kacıncı sırada yer alıyor onu bulursun. sonra bu aradaki farkı tespit edersin. Sonra bu aradaki farkı 10 'dan cıkarırsın. bu 10 ile arasındaki fark, ilk kayıttan baslıcak ve devam edecek kayıtları tutuyor. tablodaki kayıt sayısı ile senin girdiğin kayıtın bulundugu satırdaki fark ise girdiğin yerden itibarenki farkı buluyor.

Örnek;

1.adım > Kişi 98 girdi.
2.adım > tablodaki kayıt sayısı tespit edildi ve 100 cıktı.
3.adım > fark1 = 100-98 = 2.
4.adım > eger fark1, 10'dan küçükse asagıdaki işlemlere devam et, büyükse direk "select * top10" ile son 10 kaydı al. Cünkü 85 girdi diyelim basa dönmesine gerek yok.
5.adım > "select * from son_2_kayıt"
6.adım > fark2 = 10-2=8
7.adım > "select * from ilk_kayittan itibaren ilk 8 kaydı al"
8.adım > bu farklı 2 sorguyu birleştir. sanırım UNION komutu ile oluyordu.

Şu an için bana mantıklı geliyor. umarım pratiktede işe yarar


Bu mesaja 1 cevap geldi.
N
18 yıl
Çavuş
Konu Sahibi

Sağol cevabın için dediğin gibi yapmaya çalışacam umarım olur



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.