【发布时间】:2017-01-02 04:51:32
【问题描述】:
我正在尝试根据几列将UNIQUE 索引添加到我的表中。但是,它正在识别重复条目并出错。我尝试使用IGNORE 关键字,但它一直是depreciated entirely in 5.7。
这是我的 SQL:
ALTER TABLE `CotG`.`city_data`
ADD UNIQUE INDEX `unique_index` (`date` ASC, `player` ASC, `city_id` ASC);
如何添加唯一键并自动删除重复行?
编辑:这不是 How to delete duplicates on a MySQL table? 的重复,因为解决我的问题的答案是针对已贬值的 MySQL 功能......这是我在这个问题中的问题之一...
【问题讨论】:
-
创建一个具有相同结构和所需唯一索引的新表,然后使用
INSERT IGNORE INTO table1 (field1, field2, etc) SELECT field1, field2, etc FROM table2,如果您希望保留最新记录(最新记录)添加ON DUPLICATE KEY UPDATE。从中学习在开始填充数据之前始终使用唯一索引列:) -
@KraangPrime 效果很好!请添加答案,我会接受。
-
@e4c5 我不会说那里有答案,同时考虑到最佳答案(解决我的问题的答案)是针对现已弃用的 MySQL 功能...
-
65 票赞成的答案就是您需要的答案
标签: mysql duplicates