gpt4 book ai didi

mysql - 从 MySql 表中删除重复行

转载 作者:太空宇宙 更新时间:2023-11-03 11:15:30 25 4
gpt4 key购买 nike

确实有人问过类似的问题,但我没有找到答案。

我有一个包含 3 个非唯一字段的 MySql 表。我不想要重复的行。意思是 ("a", "b", "c")("a", "dasd", "dfsd") 没问题(我不介意在第一个字段中有两次“a”),但是有两次 ("a", "b", "c") 是错误的。

我需要一个删除重复项的查询,每个行组只保留一行。

最佳答案

编辑 这已在 SO before 中涵盖.

一种方法是在现有表的基础上创建一个新表。你可以通过类似的方式做到这一点:

create table myNewTable SELECT distinct * FROM myOldTable;

然后您可以清除旧表的数据,并对您不想重复的字段创建唯一约束:

TRUNCATE TABLE myOldTable;
ALTER TABLE myOldTable
ADD UNIQUE (field1, field2);

然后将您的数据插入回原始表中。因为您使用 DISTINCT 创建了 myNewTable,所以您不应该有任何重复项。

INSERT INTO myOldTable SELECT * FROM myNewTable;

关于mysql - 从 MySql 表中删除重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5363365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com