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

Mysql डुप्लिकेट पंक्तियाँ (2 कॉलम का उपयोग करके डुप्लिकेट का पता लगाया गया)

delete from myTable 
where id not in
(select min(id)
from myTable
group by A, B)

यानी कोष्ठक में चयन ए और बी के प्रत्येक समूह के लिए पहली आईडी देता है; उन सभी आईडी को हटाने से जो इस सेट में नहीं हैं, ए-प्लस-बी संयोजन के सभी अवसरों को हटा देगा जो इसकी पहली घटना के "बाद में" हैं।

संपादित करें :यह सिंटैक्स समस्याग्रस्त प्रतीत होता है:बग रिपोर्ट देखें:

http://bugs.mysql.com/bug.php?id=5037

ऐसा करना एक संभावित समाधान है:

delete from myTable 
where id not in
(
      select minid from 
      (select min(id) as minid from myTable group by A, B) as newtable
) 


  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 का उपयोग करके मूल SQL क्वेरीज़ सीखें

  2. एक संग्रहित प्रक्रिया के लूप में कर्सर का उपयोग करना

  3. प्रारंभिक डेटाबेस बनाने से इनकार किया गया- मैं सही पहुंच कैसे प्रदान करूं?

  4. जावा में utf8 के साथ समस्या

  5. हाइबरनेट:लॉक प्राप्त करने का प्रयास करते समय गतिरोध पाया गया