# MySQL删除重复数据

当时朋友让我帮他写删除重复数据的sql,发给他之后,他说这是一条价值4W的SQL,所以我每年找他催债,哈哈哈哈。

这是一条SQL示例,简单调整即可

DELETE 
FROM
	test 
WHERE
	CONCAT( category, '-', VALUE ) IN ( SELECT catvalue FROM ( SELECT CONCAT( category, '-', VALUE ) AS catvalue FROM test GROUP BY category, VALUE HAVING COUNT(*) > 1 ) b ) 
	AND id NOT IN (
	SELECT
		id 
	FROM
	( SELECT min( id ) AS id FROM test GROUP BY category, VALUE HAVING count(*) > 1 ) a 
	)
Last Updated: 12/10/2023, 7:31:44 PM