Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

एसक्यूएल पंक्तियों को हटाएं जहां आईडी का किसी अन्य तालिका से मेल नहीं है

लेफ्ट जॉइन/IS NULL का उपयोग करना:

DELETE b FROM BLOB b 
  LEFT JOIN FILES f ON f.id = b.fileid 
      WHERE f.id IS NULL

मौजूद नहीं का उपयोग करना:

DELETE FROM BLOB 
 WHERE NOT EXISTS(SELECT NULL
                    FROM FILES f
                   WHERE f.id = fileid)

NOT IN का उपयोग करना:

DELETE FROM BLOB
 WHERE fileid NOT IN (SELECT f.id 
                        FROM FILES f)

चेतावनी

जब भी संभव हो, लेन-देन के भीतर DELETEs निष्पादित करें (समर्थित मानते हुए - IE:MyISAM पर नहीं) ताकि आप समस्याओं के मामले में परिवर्तनों को वापस करने के लिए रोलबैक का उपयोग कर सकें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL में पुनरावर्ती चयन क्वेरी कैसे करें?

  2. मैं यह देखने के लिए कैसे जांच करूं कि कोई मान MySQL में एक पूर्णांक है या नहीं?

  3. PHP दिनांक () प्रारूप MySQL में डेटाटाइम में सम्मिलित करते समय

  4. MySQL में सिग्नेचर कैसे सेव करें

  5. एडब्ल्यूएस आरडीएस पर MySQL को PostgreSQL में माइग्रेट करना, भाग 3