Meraba arkadaşlar. Çok düşündüm ama bulamadım.
Sorum şu. Id'si x olan bir veriden önceki 5 veriyi ve sonraki 5 veriyi aynı sorgu içinde nasıl alabilir miyim?
Mysql'da önceki 5 veriyi ve sonraki 5 veriyi alma.
13
●900
- 27-07-2010, 14:51:26Eposta Aktivasyonu GerekmekteSQL sorgusunu şu şekilde yapıcaksın.
SELECT * FROM tablo LIMIT baslangic,alincakverimiktari
Önce 5, sonra 5 olayını matematiksel olarak hesaplayıp sql a dökersin. - 27-07-2010, 15:03:52Aslında sorun şurda. Kategorisi kitaplar olan ve idsi x olan bir videonun yine aynı kategoride olan bu videodan önceki 5 ve sonraki 5 veriyi çekmem. Bunu dediğiniz şekilde nasıl yapacağım? Limiti kesin olarak koyamıyorum kategori olayı söz konusu olunca. Çünkü önceki 5 verinin idsi her seferinde değişiyor.Dualwarior adlı üyeden alıntı: mesajı görüntüle
- 27-07-2010, 15:19:48Eposta Aktivasyonu GerekmekteWHERE katid='$katid' eklersin birde.BuRty adlı üyeden alıntı: mesajı görüntüle
- 27-07-2010, 15:43:10Hepsini alıp for döngüsüyle önceki ve sonraki 5 taneyi $i-5 $i+5 diye çıkartacaksın. Aklıma bu geldi sadece.
Mesela bi for döngüsü ile senin istediğin id numarasının satır numarasını öğrenmek gerek.
$sorgu = mysql_query(/*sorgu kodları*/); $hepsi = array(); while($row = mysql_fetch_assoc($sorgu)) { $hepsi[] = $row; } for($i=0; $i <= count($hepsi); ++$i) { if($hepsi[$i]['id'] == /* istediğin id numarası */) $aradigimizsatirnumarasi = $i; } for($p= ($i-5); $p <= ($i+5); ++$i) { echo $hepsi[$p]['name']; } - 27-07-2010, 16:19:48Teşekkürler. Tek sorguda yapmak istedim. Mysql sorgusunu arttırmak istemediğim için.Clable adlı üyeden alıntı: mesajı görüntüle
Teşekkürler. Fakat yaklaşık 13bin konu var. Verdiğiniz yöntem mysql yükünü nasıl etkiler.Hkan adlı üyeden alıntı: mesajı görüntüle