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

MySQL:Acak hasil kueri terbatas?

Anda dapat menggunakan rand() , tapi performanya jelek

select * from users order by rand() limit 5; <-- slow

Saya sarankan, simpan daftar semua id pengguna ke dalam array bersambung dan cache ke dalam file disk. (perbarui secara berkala)

Jadi, Anda dapat membatalkan serialisasi kembali menggunakan PHP, dan menggunakan PHP array_rand untuk memilih 5 pengguna acak.

Untuk mengambil informasi lengkap, Anda dapat melakukan

select * from users where user_id in(...); <-- very fast


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. memilih nilai unik dari kolom

  2. jalankan prosedur tersimpan dalam skrip aplikasi google

  3. Pembuatan Tabel MYSQL dengan nilai default (ekspresi) ke kolom

  4. Permintaan MySQL untuk mendapatkan produk WooCommerce berdasarkan nama kategori

  5. Waktu Mulai Eksekusi Acara Mysql