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

Sistem Peringkat di PHP dan MySQL

Saya pikir membuat tabel lain "memilih" lebih baik. Hubungan antara pengguna dan suara adalah n ke n, oleh karena itu tabel baru harus dibuat. Seharusnya seperti ini:

question id (int) | user id (int) | permanent (bool) | timestamp (datetime)

Bidang permanen dapat digunakan untuk membuat suara tetap setelah waktu tertentu, seperti halnya SO.
Bidang lain dapat ditambahkan sesuai dengan fitur yang diinginkan. Karena setiap baris akan membutuhkan setidaknya 16B, Anda dapat memiliki hingga 250 juta baris di tabel sebelum tabel menggunakan 4GB (batas FAT32 jika ada satu arsip per tabel, yang berlaku untuk MyISAM dan InnoDB).
Juga, seperti yang ditunjukkan Matthew Scharley dalam komentar, jangan memuat semua suara sekaligus ke dalam memori (seperti mengambil semua tabel dalam hasil). Anda selalu dapat menggunakan klausa LIMIT untuk mempersempit hasil kueri Anda.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Deklarasikan variabel pemicu MySQL

  2. Cari array posting dalam nilai kolom yang dipisahkan koma

  3. Permintaan mysql untuk menemukan semua baris yang memiliki nilai yang sama dengan baris lain

  4. Masukkan/Perbarui tanggal acak di MySQL

  5. Bagaimana cara menggabungkan dua pernyataan UPDATE dalam satu permintaan MySQL?