我有一个巨大的产品表,但有很多重复的条目。该表有更多的than10千个条目,我想删除其中的重复条目,而无需手动查找和删除它。如果你能为我提供一个解决方案,请告诉我
发布于 2011-05-12 04:40:42
有不同的解决方案可以删除重复的行,并且完全取决于您的场景是否使用其中的一个。最简单的方法是修改表,在Product Name字段中创建唯一索引:
alter ignore table products add unique index `unique_index` (product_name);您可以在删除所有重复行后删除索引:
alter table products drop index `unique_index`;如果这解决了问题,请让我知道。如果没有,我可以给你其他的解决方案。
发布于 2011-05-12 04:41:41
您可以使用SELECT DISTINCT INTO TempTable,删除原始表,然后重命名临时表。
您还应该添加主键和唯一键,以避免将来发生此类事情。
发布于 2011-05-12 04:42:48
对于整行重复项,请尝试此命令。
select distinct * into mytable_tmp from mytable
drop table mytable
alter table mytable_tmp rename mytablehttps://stackoverflow.com/questions/5970329
复制相似问题