• 25-06-2008, 02:44:07
    #10
    SQL sorgunuzda order by rand() komutunu kullanın random bi' şekilde veriler çekilecektir.
  • 25-06-2008, 13:00:41
    #11
    Üyeliği durduruldu
    order by rand() şeklinde olması gerekiyor yapamazsan erol msnden titret. online ol yoksa yazdıklarım gitmiyor
  • 25-06-2008, 20:39:24
    #12
    sorgu içinde rand kullanımı ileride , büyüyen veritabanında yavaşlamaya neden olacaktır. ben söyleyeyim de, rastgele sayı oluşturup , o sayıyı ID alarak , veri çekmenizi öneririm.
  • 25-06-2008, 22:19:09
    #13
    Erol hala halledemedinmi ?
  • 26-06-2008, 00:34:19
    #14
    Üyeliği durduruldu
    MBD adlı üyeden alıntı: mesajı görüntüle
    Erol hala halledemedinmi ?
    Denemeye fırsatım olmadı yaw.
    yeni eve geldim..

    yarın denicem inşallah, yardım edenlere teşekkür ederm

    yapamazsam yazarım
  • 26-06-2008, 11:21:40
    #15
    Kimlik doğrulama veya yönetimden onay bekliyor.
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    sorgu içinde rand kullanımı ileride , büyüyen veritabanında yavaşlamaya neden olacaktır. ben söyleyeyim de, rastgele sayı oluşturup , o sayıyı ID alarak , veri çekmenizi öneririm.
    rastgele id belirtmek içinde sonuçta tablodan dönen satır sayısını bulman gerekli bu da zaten baya ram ve cpu yer
    sonuç olarak aynı yere çıkar
  • 27-06-2008, 01:12:11
    #16
    denemesinin yapıldığı bi site vardı ama hatırlamıyorum ( bahsedilen veritabanı kayıt sayısı 150000 den fazlaydı ) . order by rand ile seçim yapılması 150 sn sürmüş diger türlü kayıt getirilmesi 5 sn gibi bir degerdi, arada bayaa bi fark var.
    Ben denemedim ama mantıklı gelmişti o zaman okuduğumda.

    ekleme : siteyi buldum burada anlatılmış bir benzeri : Sorgu suresi hakkında
  • 27-06-2008, 01:32:24
    #17
    uysal_rockci adlı üyeden alıntı: mesajı görüntüle
    denemesinin yapıldığı bi site vardı ama hatırlamıyorum ( bahsedilen veritabanı kayıt sayısı 150000 den fazlaydı ) . order by rand ile seçim yapılması 150 sn sürmüş diger türlü kayıt getirilmesi 5 sn gibi bir degerdi, arada bayaa bi fark var.
    Ben denemedim ama mantıklı gelmişti o zaman okuduğumda.
    150.000 kayıtta 150 sn sürüyorsa direkt siteden şüphe duyarım ben . RAND sadece o anda rastgele bi' veri aldırır. 150 sn. çok çok ciddi bi rakam. Kodlar optimize edilmeliymiş.
  • 27-06-2008, 03:11:45
    #18
    Kimlik doğrulama veya yönetimden onay bekliyor.
    SELECT COLOM_ADİ FROM TABLO ORDER BY RAND() LIMIT 10

    Şeklinde Çekebilirsin arkadaşların dediği gibi fakat hit'in arttıkça mysql aşırı derecede kasar share hostinglerde hemen hissedilir ve deyim yerindeyse tekmeyi yersin.Aşağıdaki şekilde yapabilirsin istediğini.

    $say=mysql_query("SELECT COUNT( COLOM_ADİ ) as toplam FROM TABLO");
    $al=mysql_result($say,0,’toplam’); // Kaç adet veri olduğunu sayıyoruz
    $kac=rand(0,$al); // Rasgele bir sayı alıyoruz veri sayısını aşmayacak şekilde
    SELECT COLOM_ADİ FROM TABLO limit $kac,10// Buradaki 10 çekilecek veri sayısı

    Yukarıda yazdıklarım bir kaç sorgu daha fazla gibi görünsede mysql sunucusunu daha az kasar ve daha hızlıdır bizzat test edilmiştir.