UPDATE t1
LEFT JOIN
t2
ON t2.id = t1.id
SET t1.col1 = newvalue
WHERE t2.id IS NULL
ध्यान दें कि SELECT
. के लिए NOT IN
. का उपयोग करना अधिक कुशल होगा / NOT EXISTS
वाक्य रचना:
SELECT t1.*
FROM t1
WHERE t1.id NOT IN
(
SELECT id
FROM t2
)
प्रदर्शन विवरण के लिए मेरे ब्लॉग में लेख देखें:
- अपूर्ण ऑर्डर ढूंढना
:
LEFT JOIN
. का प्रदर्शनNOT IN
. की तुलना में
दुर्भाग्य से, MySQL
UPDATE
. में सबक्वेरी में लक्ष्य तालिका का उपयोग करने की अनुमति नहीं देता है कथन, इसलिए आपको कम कुशल LEFT JOIN
. पर टिके रहने की आवश्यकता होगी वाक्य रचना।