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

SQL Query berdasarkan tabel lain

Coba kueri ini:

SELECT m2.movieId
FROM mMoviesGenres m1
INNER JOIN mMoviesGenres m2
    ON m1.genreID = m2.genreID
WHERE m1.movieId = 1 AND
      m2.movieId <> 1
GROUP BY m2.movieId
HAVING COUNT(*) = (SELECT COUNT(*) FROM mMoviesGenres WHERE movieId = 1)

Pembaruan:

Jika Anda ingin menemukan film yang serupa dalam setidaknya dua genre, gunakan HAVING ini klausa:

HAVING COUNT(*) >= 2


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Buat jika entri tidak ada, jika tidak perbarui?

  2. Hibernasi mengirim kueri berlebihan ke database

  3. Pilih angka terbesar dari Tabel MYSQL dengan Prefix tambahan

  4. Kesalahan MySQL:Nilai di luar rentang untuk 'jumlah' kolom di baris 1

  5. Bagaimana saya menyimpan dan mengambil gambar di server saya di aplikasi web java