Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak mogę się upewnić, że dwa losowo wybrane rzędy różnią się od siebie?

Możesz wykonać tylko raz, ale zamiast tego uzyskać dwa, dzięki czemu nigdy nie wybierzesz tego samego wiersza:

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

Uwaga dodatkowa:uważaj na to ORDER BY rand() klauzula, ponieważ będzie działać wolno na dużych zestawach danych. Możesz użyć alternatywy dzięki świetnej odpowiedzi @Billa Karwina



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. $this->db->insert_id() nie działa w mysql codeigniter

  2. Popraw haszowanie hasła za pomocą losowej soli

  3. Nie mogę zrozumieć, jak uzyskać dane z MySql Query

  4. Upłynął limit czasu pgadmin Nie można połączyć się z serwerem

  5. Mysql sortowanie danych hierarchicznych