gpt4 book ai didi

sqlite - 识别 SQLite3 数据库中的重复行并删除它们

转载 作者:行者123 更新时间:2023-12-02 00:51:37 28 4
gpt4 key购买 nike

我有一个表 listed_users,它有两个 TEXT 列:codeusername:

code | username
-----|---------
aa | john_doe
ab | jane_doe
ca | john_doe
ca | john_doe <-- duplicate
da | ryan_doe

我想编写一个命令来删除重复项,例如 ca | john_doe,其中相同的信息出现在多行的两列中。

最佳答案

要删除一对重复行中的一个,您必须有某种机制来识别它。在 SQLite 中,这将是 rowid .

以下查询返回您要保留的所有行的 rowid 值,即每个唯一代码/名称组合对应一行:

SELECT min(rowid)
FROM listed_users
GROUP BY code, username;

您想要删除不在该列表中的所有行:

DELETE FROM listed_users
WHERE rowid NOT IN (SELECT min(rowid)
FROM listed_users
GROUP BY code, username);

关于sqlite - 识别 SQLite3 数据库中的重复行并删除它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48133026/

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