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

periksa apakah kolom berisi SEMUA nilai kolom lain - Mysql

Jika saya mengerti dengan benar, Anda ingin mengambil semua personID dari T1 yang memiliki semua stuffID terkait yang ditemukan di T2.

Anda dapat memecahnya sebagai berikut:Pertama-tama, temukan semua entri T1 yang cocok dengan kueri bersarang

SELECT personID 
FROM T1 WHERE stuffID IN (SELECT stuffID FROM t2)

Sekarang Anda perlu memeriksa entri mana dalam set ini yang berisi SEMUA ID barang yang Anda inginkan

GROUP BY personID
HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)

dan gabungkan semuanya:

SELECT personID 
FROM T1 WHERE stuffID IN (SELECT stuffID FROM t2)
GROUP BY personID
HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)

HTH.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana mengatasi kesalahan MySQL max_user_connections

  2. Mysql hanya mengembalikan satu baris saat menggunakan Hitung

  3. Cara Memperbaiki Peringatan Penasihat Keamanan MySQL

  4. Mengunduh dump MySQL dari baris perintah

  5. Bagaimana stempel waktu unix disimpan dalam kolom int?