可能重复:
删除MySQL中的重复行
如何从MySQL表中删除所有重复数据?
例如,使用以下数据:
SELECT * FROM names;
+----+--------+
| id | name |
+----+--------+
| 1 | google |
| 2 | yahoo |
| 3 | msn |
| 4 | google |
| 5 | google |
| 6 | yahoo |
+----+--------+
Run Code Online (Sandbox Code Playgroud)
我会使用,SELECT DISTINCT name FROM names;如果它是一个SELECT查询.
我怎么做DELETE才能删除重复项并保留每个重复记录?
我有一个包含以下字段的表:
id (Unique)
url (Unique)
title
company
site_id
Run Code Online (Sandbox Code Playgroud)
现在,我需要删除具有相同的行title, company and site_id.一种方法是使用以下SQL和脚本(PHP):
SELECT title, site_id, location, id, count( * )
FROM jobs
GROUP BY site_id, company, title, location
HAVING count( * ) >1
Run Code Online (Sandbox Code Playgroud)
运行此查询后,我可以使用服务器端脚本删除重复项.
但是,我想知道是否只能使用SQL查询来完成.