0

我有多个条目的数据库。

我用谷歌搜索出这样的东西

SELECT COUNT(*), item_id, text, number FROM ads
GROUP BY item_id, text, number
HAVING COUNT(*)>1;

这选择(我认为)我所有的多个条目,我使用 SQLyog,......并且没有选项可以按下按钮并删除此查询的所有结果

但是即使我一个一个全选删除,我也会删除原来的,对吧?

我基本上想保留所有唯一条目并保留多个项目之一。

简单的例子

('1' '诺维萨德' '123'); ('1' '诺维萨德' '123'); ('3' '贝尔格莱德' '124');

我想保留

('1' '诺维萨德' '123'); ('3' '贝尔格莱德' '124');

我只知道基本的mysql。

4

4 回答 4

1

当您删除条目时,请确保重置您的 ID 增量

ALTER TABLE 'table_name' AUTO_INCREMENT = 1
于 2010-02-22T22:03:44.447 回答
1

你可以只复制、删除和删除吗?

CREATE TABLE Copy_Temp as
SELECT item_id, text, number 
FROM ads
GROUP BY item_id, text, number;

DROP Table ads;

RENAME TABLE Copy_Temp TO ads;
于 2010-02-22T22:05:15.097 回答
1

将所有唯一记录选择到临时表中。
从原始表中删除所有记录。
将临时表中的所有记录插入原始表中。

于 2010-02-22T22:06:06.037 回答
0
DELETE emp FROM employee emp, employee emp2
WHERE emp.id > emp2.id
AND emp.name = emp2.name

例如,您的表employee中存在重复记录(多次具有相同名称),则此查询将删除所有重复记录。

于 2016-08-03T12:05:41.627 回答