Det bästa sättet jag har hittat för att välja hur många slumpmässiga poster som helst är med OFFSET i frågan.
Låt oss säga att du vill ha sex slumpmässiga poster, så jag lånar från ett svar ovan och räknar det totala antalet vänner i databasen.
$sql = mysql_query("SELECT COUNT(*) AS total FROM friends WHERE member_id='". $_SESSION['userid'] ."'");
$get_count = mysql_fetch_array($sql); // Fetch the results
$numfriends = $get_count['total']; // We've gotten the total number
Nu får vi de 6 slumpmässiga posterna av det totala antalet ovan (förhoppningsvis är det> 6),
$query = mysql_query("SELECT * FROM friends WHERE member_id='". $_SESSION['userid'] ."' LIMIT 6 OFFSET " . (rand(0, $numFriends));
while ($rows = mysql_fetch_array($query))
{
/// show your $rows here
}
Att använda OFFSET är kanske inte det bästa eller mest effektiva, men det har fungerat för mig på stora databaser utan att försvåra dem.