修改
这个查询不起作用,不知道为什么?
select `key`, distinct `filename`, `url`, `processed`, `timestamp` from snaps;
它说检查'distinct
filename``
我有下表
CREATE TABLE IF NOT EXISTS `snaps` (
`filename` varchar(255) COLLATE utf8_bin NOT NULL,
`url` text COLLATE utf8_bin NOT NULL,
`processed` int(11) NOT NULL,
`timestamp` int(11) NOT NULL,
KEY `key` (`key`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
我导出了表的行,并错误地将其导回到同一个表中。所以现在我有两排一切。 filename
是唯一的。
如何删除重复记录?
答案 0 :(得分:1)
将DISTINCT选择到临时表中,刷新第一个,然后再将它们移回。
答案 1 :(得分:0)
如果您拥有该表的所有原始非重复行,那么不能只是
TRUNCATE <table>
然后重新导入它们?
答案 2 :(得分:0)
第二组行与插入的时间戳是否相同?如果是这样,您可以根据该时间戳删除。
或者,您可以SELECT INTO OUTFILE
删除后半部分,TRUNCATE TABLE
然后LOAD DATA INFILE
。