PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

temukan buku serupa berdasarkan buku yang dibeli berdasarkan kata kunci meta buku

Anda dapat melakukannya dengan bergabung:

select bmk2.book
from customer_books cb
inner join book_meta_keyword bmk1 
    on  bmk1.book = cb.book
inner join book_meta_keyword bmk2 
    on  bmk2.meta_keyword = bmk1.meta_keyword
    and bmk2.book <> bmk1.book
where cb.customer = 1

Kueri dimulai dari buku yang dibeli pelanggan 1, lalu bawa kata kunci yang sesuai, dan akhirnya dapatkan semua buku lain yang memiliki kata kunci yang sama.

Catatan:

  • Jika ada beberapa kata kunci yang cocok di seluruh buku, maka Anda akan mendapatkan duplikat di hasil. Dalam hal ini gunakan select distinct

  • Anda tidak perlu tabel book untuk mendapatkan hasil yang Anda inginkan - jika diperlukan karena alasan tertentu, Anda dapat membawanya dengan satu lagi bergabung




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres GABUNG dengan unnest

  2. PostgreSQL tanpa instalasi berjalan di Windows tetapi server tidak memulai di CentOS Linux

  3. Ubah Tanggal Julian menjadi tanggal Kalender di Postgresql

  4. Fungsi PostgreSQL mengembalikan batal

  5. Bagaimana cara menjatuhkan database template dari PostgreSQL?