sql >> Base de Datos >  >> RDS >> Mysql

MySQL Eliminar filas duplicadas que tienen el mismo valor de columna

En MySQL, puede mantener la identificación más pequeña (o más grande) usando JOIN :

DELETE p
    FROM pictures p JOIN
         (SELECT p.picture_id, p.date, MIN(id) as min_id
          FROM pictures p
          WHERE p.picture_id = 2 AND p.date = '2018-07-13' 
          GROUP BY p.picture_id
         ) pp
         ON p.picture_id = pp.picture_id AND p.date = pp.date AND p.id > p.min_id;