mysql 根据字段删除重复的记录保留最新数据

表(order_test)结构:mysql

mysql 语句:sql

DELETE FROM order_test WHERE
(
name IN ( SELECT n.name FROM
( SELECT name FROM order_test GROUP BY name HAVING COUNT(name) > 1 ) n )
) AND (
id NOT IN (
SELECT i.id FROM
( SELECT max(id) AS id FROM order_test GROUP BY name HAVING COUNT(name) > 1 ) i
)
)blog

执行结果:get

eg:这里用的max(id),保留最新数据。保留最开始的数据采用min(id)博客

原文连接:根据字段删除重复的记录保留最新数据class

我的博客:www.liusongs.comtest