Mysql
 sql >> Database >  >> RDS >> Mysql

Come posso assicurarmi che due righe selezionate a caso siano diverse l'una dall'altra?

Puoi eseguire solo una volta ma ottenerne due in modo da non scegliere mai la stessa riga:

$result = mysqli_query($conn,"SELECT * FROM photos ORDER BY rand() LIMIT 2");
$row = $result->fetch_assoc();
$row2 = $result->fetch_assoc();
// invoke `->fetch` twice to get the first and second row
$img1link = $row['link'];
$img2link = $row2['link'];

Nota a margine:fai attenzione a quel ORDER BY rand() clausola poiché sarà lento su set di dati di grandi dimensioni. Puoi utilizzare un'alternativa con la fantastica answer di @Bill Karwin