Semak sama ada Lajur Mengandungi Semua Nilai Lajur Lain dalam MySQL
Masalah:
Katakan anda mempunyai dua jadual, T1 dan T2, dengan lajur mewakili ID orang dan ID bahan. Bagaimanakah anda boleh menentukan ID orang yang dikaitkan dengan semua ID bahan dalam T2?
Penyelesaian:
Untuk mencari ID orang yang mempunyai semua ID bahan yang berkaitan ditemui dalam T2, ikut langkah berikut:
SELECT personID FROM T1 WHERE stuffID IN (SELECT stuffID FROM t2)
GROUP BY personID HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)
SELECT personID FROM T1 WHERE stuffID IN (SELECT stuffID FROM t2) GROUP BY personID HAVING COUNT(DISTINCT stuffID) = (SELECT COUNT(stuffID) FROM t2)
Pertanyaan ini akan mengembalikan ID orang yang mempunyai semua ID bahan berkaitan yang dinyatakan dalam T2. Dalam contoh yang diberikan, hasilnya ialah ID orang 1.
Atas ialah kandungan terperinci Bagaimana untuk mencari ID Orang yang dikaitkan dengan Semua ID Barang dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!