Eğer satır bir ton yoksa, sadece yapabilirsiniz:
SELECT * FROM myTable ORDER BY RAND() LIMIT 3;
Eğer birçok satır varsa, bu yavaş olsun, ama daha küçük veriler için para cezası çalışacak ayarlar olacaktır.
Steve Michel onun cevabını bahseder gibi, bu yöntem büyük tablolar için çok çirkin alabilirsiniz. Onun öneri kapalı atlamak için iyi bir yerdir. Eğer masanın üzerinde yaklaşık maksimum tamsayı PK biliyorsanız, tek ve maksimum PK değeri arasında rastgele bir sayı üretmek gibi bir şey yapabilirim, sonra gibi bir zamanda rastgele satır bir kapmak:
$q="SELECT * FROM table WHERE id >= {$myRandomValue}";
$row = $db->fetchOne($q); //or whatever CI's interface to grab a single is like
Tabii ki 3 rastgele satır gerekiyorsa, burada üç sorgu gerekir, ama onlar PK tamamen konum olarak, onlar (bütün tablo randomizing daha er) hızlı olacak.