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

मेरी तालिका से डुप्लिकेट रिकॉर्ड को कैसे रोकें सम्मिलित करें अनदेखा करें यहां काम नहीं करता है

UNIQUE . जोड़कर तालिका में बदलाव करें बाधा

ALTER TABLE employee ADD CONSTRAINT emp_unique UNIQUE (ename,dno,mgr,sal)

लेकिन आप ऐसा कर सकते हैं यदि तालिका employee खाली है।

या यदि रिकॉर्ड मौजूद हैं, तो IGNORE adding जोड़ने का प्रयास करें

ALTER IGNORE TABLE employee ADD CONSTRAINT emp_unique UNIQUE (ename,dno,mgr,sal)

अपडेट 1

कुछ गलत हो गया, मुझे लगता है। आपको केवल कॉलम ename . पर अद्वितीय बाधा जोड़ने की आवश्यकता है चूंकि eno AUTO_INCREMENT के कारण हमेशा अद्वितीय रहेगा .

अद्वितीय बाधा जोड़ने के लिए, आपको अपनी मेज पर कुछ सफाई करने की आवश्यकता है।

नीचे दिए गए प्रश्न कुछ डुप्लिकेट रिकॉर्ड हटाते हैं, और कॉलम ename . पर अद्वितीय बाधा जोड़कर तालिका को बदल देते हैं ।

DELETE a
FROM Employee a
     LEFT JOIN
     (
        SELECT ename, MIN(eno) minEno
        FROM Employee
        GROUP BY ename
     ) b ON a.eno = b.minEno
WHERE b.minEno IS NULL;

ALTER TABLE employee ADD CONSTRAINT emp_unique UNIQUE (ename);

ये रहा पूरा प्रदर्शन



  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 सर्वर और MySQL क्लाइंट में क्या अंतर है

  3. संग्रहीत कार्यविधि अगली क्वेरी पर कमांड को सिंक से बाहर कर देती है

  4. इमोजी डेटाबेस नोड में नहीं डाल रहे हैं js mysql

  5. मैसकल:चुनिंदा स्टेटमेंट के भीतर इनलाइन टेबल बनाएं?