首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL -删除违反唯一性约束的数据

MySQL -删除违反唯一性约束的数据
EN

Stack Overflow用户
提问于 2010-07-23 06:56:04
回答 1查看 231关注 0票数 1

如何删除违反唯一性约束的数据?

我有一个表,我想为其添加唯一性约束。表中有违反该约束的数据,我想删除它。在这一点上,我并不关心我丢失了哪些数据,只关心最终的数据是好的。

我的第一次尝试是使用“create table like”来复制表,使用alter table添加唯一键,以及将数据从旧表复制到新表。

不幸的是,最后一步复制了所有的数据,并且没有抱怨唯一性。

EN

回答 1

Stack Overflow用户

发布于 2010-07-23 06:58:48

这将添加唯一索引并删除重复项:

代码语言:javascript
复制
ALTER IGNORE TABLE your_table ADD UNIQUE INDEX your_table_index (...);

来自the docs

SQL是对标准

的MySQL扩展。它控制如果新表中存在唯一键上的重复项,或者在启用严格模式时出现警告,ALTER TABLE如何工作。如果未指定IGNORE,则会在发生重复键错误时中止并回滚复制。如果指定了IGNORE,则唯一键上有重复项的行将只使用第一行,其他冲突行将被删除。不正确的值将被截断为最匹配的可接受值。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3314172

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档