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

अस्थायी तालिका बनाए बिना डुप्लिकेट रिकॉर्ड हटाएं

यहाँ एक इन-प्लेस समाधान है (लेकिन एक-लाइनर नहीं)

अधिकतम आईडी पता करें:

select max(id) as maxid 
  from shop;

इस मूल्य को याद रखें। मान लें कि यह 1000 के बराबर है;

ऑफ़सेट के साथ अद्वितीय मान दोबारा डालें:

insert into shop (id, tax_id) 
select distinct id + 1000, tax_id 
  from shop;

पुराने मान छोड़ें:

delete from shop
  where id <= 1000;

सामान्य आईडी बहाल करें:

update shop
  set id = id - 1000;

लाभ!



  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. एक mysql डेटाबेस का बैकअप लें और फ़ाइल के रूप में डाउनलोड करें

  4. अल्पविराम मानों वाली तालिकाओं में शामिल हों

  5. यूरो साइन साइट पर नहीं दिख रहा है