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

Menggunakan array dalam kueri SQL

Berikut tata letak umum untuk Anda, buat tiga tabel seperti yang Anda sebutkan, saya uraikan di bawah ini hanya sebagai contoh

[TABEL]

  • pengguna
  • pengikut
  • postingan

Di tabel pengguna Anda harus memiliki setidaknya kolom seperti userid (nilai yang bertambah otomatis / kunci utama).

Tabel pengikut harus memiliki sesuatu seperti userid yang akan cocok dengan userid tabel pengguna, kolom followid yang juga akan memiliki id # untuk pengikut dari tabel users.

Kemudian untuk tabel posting Anda, Anda juga ingin memiliki userid sehingga ketika setiap posting dibuat, itu akan memiliki id dari tabel pengguna.

Maka Anda perlu melakukan sesuatu seperti:

SELECT p.*
FROM posts AS p
WHERE p.userid IN (SELECT followid FROM followers WHERE userid = ###)
ORDER BY p.date DESC

Sekarang itu benar-benar tergantung pada bagaimana Anda mendapatkan id pengguna untuk mengetahui hal ini. Jika Anda meneruskan id pengguna menggunakan sesi setelah mereka masuk mirip dengan sesuatu seperti Facebook, maka Anda dapat mengubah userid =### menjadi sesuatu seperti userid =".$_SESSION['userid']." Tetapi sekali lagi itu benar-benar tergantung pada bagaimana Anda memberikan id pengguna tetapi hal di atas setidaknya akan membantu Anda memulai.

Pastikan untuk meletakkan indeks pada kolom userid, followid sehingga ketika tabel menjadi lebih besar akan melakukan join dengan cepat.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kode Migrasi Spesifik Basis Data

  2. Batalkan permintaan AJAX yang tertunda di aplikasi PHP?

  3. Bagaimana cara mencari array JSON di MySQL?

  4. MySQL Workbench menunjukkan hasil sebagai BLOB

  5. Pernyataan tunggal MySQL untuk menggabungkan dua tabel