ऐसा करने के कई अलग-अलग तरीके हैं, अलग-अलग दक्षता के साथ, यह इस बात पर निर्भर करता है कि आपका क्वेरी ऑप्टिमाइज़र कितना अच्छा है, और आपकी दो तालिकाओं का सापेक्ष आकार:
यह सबसे छोटा कथन है, और यदि आपकी फ़ोन बुक बहुत छोटी है तो यह सबसे तेज़ हो सकती है:
SELECT *
FROM Call
WHERE phone_number NOT IN (SELECT phone_number FROM Phone_book)
वैकल्पिक रूप से (धन्यवाद Alterlife )
SELECT *
FROM Call
WHERE NOT EXISTS
(SELECT *
FROM Phone_book
WHERE Phone_book.phone_number = Call.phone_number)
या (WOPR के लिए धन्यवाद)
SELECT *
FROM Call
LEFT OUTER JOIN Phone_Book
ON (Call.phone_number = Phone_book.phone_number)
WHERE Phone_book.phone_number IS NULL
(इसे अनदेखा करते हुए, जैसा कि अन्य ने कहा है, सामान्य रूप से केवल अपने इच्छित कॉलम का चयन करना सबसे अच्छा है, न कि '*
')