ऐसा करने के कुछ तरीके हैं:
आप एंटी-जॉइन का उपयोग कर सकते हैं, जैसे:
SELECT m.MEMBERID,
m.LASTNAME,
m.FIRSTNAME
FROM MEMBERS m
WHERE m.MEMBERID NOT IN (SELECT DISTINCT MEMBERID
FROM CURRENTLOAN
UNION ALL
SELECT DISTINCT MEMBERID
FROM HISTORY);
आप जो चाहते हैं उसे करने का दूसरा तरीका (और मेरी पसंदीदा विधि) है:
SELECT DISTINCT m.MEMBERID,
m.LASTNAME,
m.FIRSTNAME
FROM MEMBERS m
LEFT OUTER JOIN (SELECT DISTINCT MEMBERID
FROM (SELECT MEMBERID
FROM CURRENTLOAN
UNION ALL
SELECT MEMBERID
FROM HISTORY)) u
ON u.MEMBERID = m.MEMBERID
WHERE u.MEMBERID IS NULL;
हालांकि, आपके द्वारा इस क्वेरी को दिखाए गए डेटा के साथ-साथ आपकी मूल क्वेरी को शून्य पंक्तियों को वापस करना चाहिए। SQLFiddle यहां
ध्यान दें कि यदि आप सदस्य 004 को वर्तमान ऋण पर टिप्पणी करते हैं, तो "जो ब्राउन" वापस आ जाता है SQLFiddle यहाँ
शुभकामनाएँ।