यह व्यवहार एएनएसआई मानकों के अनुसार सही है।
यदि अयोग्य कॉलम नाम आंतरिक दायरे में हल नहीं होता है तो बाहरी दायरे पर विचार किया जाएगा। इतनी प्रभावी ढंग से आप एक अनजाने सहसंबद्ध उप क्वेरी कर रहे हैं।
जब तक टेबल profile
तब कम से कम एक पंक्ति होती है
FROM users
WHERE user_id IN (
SELECT user_id FROM profile
)
अंत में users
. में सभी पंक्तियों का मिलान होगा (किसी भी जगह को छोड़कर जहां users.user_id IS NULL
. है के रूप में WHERE NULL IN (NULL)
सत्य का मूल्यांकन नहीं करता है)। इस संभावित समस्या से बचने के लिए आप दो भागों के नामों का उपयोग कर सकते हैं।
DELETE FROM users
WHERE user_id IN (SELECT p.user_id
FROM profile p)
त्रुटि देगा