gpt4 book ai didi

MYSQL删除重复记录但保留数据库中第一次出现的记录

转载 作者:行者123 更新时间:2023-11-29 04:07:17 24 4
gpt4 key购买 nike

我已经为我的问题寻找了解决方案,但是我找不到完全符合我需要完成的事情。

我有一个数据库,其中 slug 列有重复的条目。我需要删除所有重复项,但保留数据库中该行的第一次出现。我不能只保留具有最低编号的 id 列,因为它们在数据库中的顺序不同,例如...

id         slug
--------- -----------
4 example-1
3 example-1
2 example-1
1 example-1
5 example-1

我需要保留 id 为 5 的 slug,并删除 slug 为 example-1 的所有其他字段。这可能吗?

最佳答案

不确定是否有一种语法可以一步完成。但可以肯定的是,它可以通过两个简单的步骤解决。

首先选择要保留到临时表中的行。

SELECT max(id), slug
FROM your_table
GROUP BY slug

然后简单地删除所有不在临时表中的行:

DELETE FROM your_table WHERE id NOT IN (SELECT id FROM temp_table)

关于MYSQL删除重复记录但保留数据库中第一次出现的记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28678536/

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