sql >> Databasteknik >  >> RDS >> Mysql

Hur kan jag försäkra mig om att två rader som väljs slumpmässigt skiljer sig från varandra?

Du kan bara köra en gång men skaffa två istället så att du aldrig väljer samma rad:

$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'];

Sidenote:Var försiktig med ORDER BY rand() klausul eftersom det kommer att gå långsamt på stora datamängder. Du kan använda ett alternativ med @Bill Karwins fantastiska svar



  1. hur man skapar dynamisk meny med undermeny med php &mysql

  2. Vilka karaktärer måste escapes för att förhindra (My)SQL-injektioner?

  3. Hur byter man värden på två rader i MySQL utan att bryta mot unika begränsningar?

  4. Fråga för att beräkna summan av avstånd (longitud, latitud) i på varandra följande rader i Mysql