आपको HAVING . का उपयोग करना होगा , नहीं WHERE ।
अंतर यह है:WHERE क्लॉज फ़िल्टर जो MySQL का चयन करता है। फिर MySQL पंक्तियों को एक साथ समूहित करता है और आपके COUNT . के लिए संख्याओं को एकत्रित करता है समारोह।
HAVING WHERE like जैसा है , केवल बाद . होता है COUNT मूल्य की गणना की गई है, इसलिए यह आपकी अपेक्षा के अनुरूप काम करेगा। अपनी सबक्वायरी को इस प्रकार फिर से लिखें:
( -- where that pid is in the set:
SELECT c2.pid -- of pids
FROM Catalog AS c2 -- from catalog
WHERE c2.pid = c1.pid
HAVING COUNT(c2.sid) >= 2)