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

mysql में 1 से अधिक गिनती वाली डुप्लिकेट पंक्तियों को हटाएं

MySQL में आप उस तालिका से चयन नहीं कर सकते जिसे आप उसी समय से हटा रहे हैं। लेकिन एक अस्थायी तालिका से आप इस समस्या को दूर कर सकते हैं

DELETE FROM `users_acl` 
WHERE userID IN
(
    SELECT * FROM
    (
       SELECT userID
       FROM `users_acl`
       GROUP BY userID 
       HAVING COUNT(userID) > 1
       AND SUM(`acl` = 4) > 0
   ) tmp
);

या join . का उपयोग करें इसके बजाय

DELETE u
FROM `users_acl` u
JOIN 
(
    SELECT userID
    FROM `users_acl`
    GROUP BY userID 
    HAVING COUNT(userID) > 1
    AND SUM(`acl` = 4) > 0
) tmp on tmp.userID = u.userID


  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. डेटाबेस से तालिका नाम प्राप्त करें

  3. क्या मुझे MySQL में प्रत्येक रिकॉर्ड के लिए एक अद्वितीय TIMESTAMP मिल सकता है?

  4. MySQL काउंट मैचिंग वर्ड्स

  5. MySql कार्यक्षेत्र जाँच बाधा