2010-07-17 15 views
6

Mysql tablosundaki tablodaki yinelenen kayıtları silmem gerekiyor. Yani ben bir tablo adı var "çalışan" alanları i mysql içindeki bir tablodaki yinelenen satırların nasıl silineceği

 SELECT COUNT(empssn), empssn 
     FROM employee 
GROUP BY empssn 
    HAVING COUNT(empssn)>1 

Şimdi ben yinelenen kayıtları silmek istediğiniz bir sorgu yazdım yinelenen bir kayıt almak için

empssn, EmpName EmpID bulunmaktadır. Bunun için yazdığım sorgu var.

DELETE FROM employee 
      WHERE (empid, empssn) NOT IN (SELECT MIN(empid), empssn 
                  FROM employee 
                GROUP BY empssn); 

Tabloda kayıtları varsayabiliriz

EmpId EmpName EmpSSN 
------------------------------- 
1 Jack  555-55-5555 
2 Joe  555-56-5555 
3 Fred  555-57-5555 
4 Mike  555-58-5555 
5 Cathy  555-59-5555 
6 Lisa  555-70-5555 
7 Jack  555-55-5555 
8 Mike  555-58-5555 
9 Cathy  555-59-5555 
10 Lisa  555-70-5555 
11 Lisa  555-70-5555 

vardır ama bir mysql hatası Sen maddede

GELEN içinde güncelleştirme için hedef tablo 'çalışan' belirleyemezsiniz

olduğunu var

cevap

İlgili konular