2010-07-17 18 views
6

Necesito eliminar el registro duplicado de la tabla en mysql. así que tengo un nombre de tabla campos "empleados" son empid, empname, empssncómo eliminar filas duplicadas de una tabla en mysql

para obtener registro duplicado he escrito una consulta

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

ahora quiero eliminar registros duplicados. para eso he escrito la consulta es.

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

se puede asumir los registros en la tabla son

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 

pero tengo un error de MySQL es

No se puede especificar la tabla de destino 'empleado' para la actualización de cláusula de

Respuesta

Cuestiones relacionadas