आपके छद्म कोड से मुझे लगता है कि आप जांचना चाहते हैं कि मूल्यों की एक (गतिशील) सूची SELECT
द्वारा प्रदान की गई किसी अन्य सूची का सबसेट है या नहीं . यदि हाँ, तो एक पूरी तालिका दिखाई जाएगी। यदि नहीं, तो कोई पंक्तियाँ नहीं दिखाई जाएँगी।
इसे हासिल करने का तरीका यहां बताया गया है:
SELECT *
FROM tb_values
WHERE
( SELECT COUNT(DISTINCT value)
FROM tb_value
WHERE isgoodvalue = true
AND value IN (value1, value2, value3)
) = 3
अपडेट किया गया ओपी के स्पष्टीकरण के बाद:
SELECT *
FROM project
JOIN
( SELECT projectid
FROM projectTagMap
WHERE isgoodvalue = true
AND tag IN (tag1, tag2, tag3)
GROUP BY projectid
HAVING COUNT(*) = 3
) AS ok
ON ok.projectid = project.id