我正在尝试根据几个列向我的表添加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功能....这是我的一个问题这个问题......
答案 0 :(得分:0)
此问题的最简单解决方案是基于先前的结构创建新表,并运行如下查询:
INSERT IGNORE INTO table1
(field1, field2, etc)
SELECT
field1,
field2,
FROM
table2
如果您希望保留最新记录(按照table1
中存储的顺序),您可以添加:
ON DUPLICATE KEY UPDATE