-
Üyelik
13.06.2019
-
Yaş/Cinsiyet
43 / E
-
Meslek
Serbest
-
Konum
İstanbul Anadolu
-
Ad Soyad
C** E**
-
Mesajlar
367
-
Beğeniler
69 / 147
-
Ticaret
0, (%0)
soru aslında mysql sorusu.
biraz araştırdım ama tek bir sorgu şeklinde sanırım ben başaramıyorum. ama aklıma şu geliyor;
son x kaydı alıp bir arraye atayıp o arrayden bir tane random seçmek.
fakat performans konusunda bununla ilgili bir fikrim yok. bu işlemi bir sorgu ile halledebilirmiyiz?
yoksa bahsettiğim yöntem mantıklımı?
İmkansız olduğunu düşünürsen hiç birşey başaramazsın.
-
Üyelik
29.10.2016
-
Yaş/Cinsiyet
33 / E
-
Meslek
Öğretmen
-
Konum
Konya
-
Ad Soyad
O** K**
-
Mesajlar
1116
-
Beğeniler
499 / 498
-
Ticaret
16, (%100)
array_rand() fonksiyonu işinizi görür.
-
Üyelik
06.06.2019
-
Yaş/Cinsiyet
19 / E
-
Meslek
Öğrenci
-
Konum
Diğer
-
Ad Soyad
B** G**
-
Mesajlar
1002
-
Beğeniler
250 / 478
-
Ticaret
41, (%100)
SELECT * from (SELECT * FROM tablo adı ORDER by id DESC LIMIT 10) as tbl ORDER by RAND() LIMIT 1
Bu sorgu son 10 satır arasından rastgele bir tanesini seçer. Ama performans açısından tam bir yorum yapamayacağım ben de, PHP tarafında yapsanız da pek farklı olmaz sanırım.
-
Üyelik
13.06.2019
-
Yaş/Cinsiyet
43 / E
-
Meslek
Serbest
-
Konum
İstanbul Anadolu
-
Ad Soyad
C** E**
-
Mesajlar
367
-
Beğeniler
69 / 147
-
Ticaret
0, (%0)
awoken adlı üyeden alıntı
SELECT * from (SELECT * FROM tablo adı ORDER by id DESC LIMIT 10) as tbl ORDER by RAND() LIMIT 1
Bu sorgu son 10 satır arasından rastgele bir tanesini seçer. Ama performans açısından tam bir yorum yapamayacağım ben de, PHP tarafında yapsanız da pek farklı olmaz
sanırım.
evet bu sorgu işimi görebilir diye düşünüyorum.
diğer taraftan son x kaydı alıp içlerinden random seçmek uzun yol olsada milyonlarca kayıtta randomdan çok daha ferformanslı. zaten performans için son kayıtlar arasından seçiyorum. aksi durumda random ile 1milyon sorguda herhalde 1dk işlem yapar :)
çok teşekkür ediyorum yardım için.
İmkansız olduğunu düşünürsen hiç birşey başaramazsın.