Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

PHP MySQL pilih baris acak

Cara terbaik yang saya temukan untuk memilih sejumlah catatan acak adalah dengan OFFSET dalam kueri.

Katakanlah Anda menginginkan 6 catatan acak, jadi saya akan meminjam jawaban di atas dan menghitung jumlah total teman dalam database.

$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

Sekarang kita akan mendapatkan 6 record acak dari total di atas (semoga>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
}

Menggunakan OFFSET mungkin bukan yang terbaik atau paling efisien, tetapi ini berhasil bagi saya di database besar tanpa menghambatnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kasus Peta satu-ke-banyak yang paling sederhana di Hibernate tidak berfungsi di MySQL

  2. MySQL Sebelum Hapus pemicu untuk menghindari menghapus banyak baris

  3. Saya tidak sengaja mengunci root di MySQL

  4. Menghubungkan ke beberapa instance CloudSQL menggunakan proxy Cloud sql?

  5. KESALAHAN 1878 (HY000):Kegagalan penulisan file sementara