从sqlite数据库中删除重复的行

从sqlite数据库中删除重复的行,第1张

概述我有一个巨大的表 – 3600万行 – 在SQLite3。 在这个非常大的表中,有两列 > hash – 文本 > d – real 但是,某些行是重复的。也就是说,hash和d都具有相同的值。 此外,如果两个散列是相同的,d的值也是相同的,但是两个相同的ds不意味着两个相同的散列 反正,我想删除重复的行。我没有主键列,因为我是一个白痴。什么是最快的方式做到这一点? EDIT:delete fro 我有一个巨大的表 – 3600万行 – 在sqlite3。

在这个非常大的表中,有两列

> hash – 文本
> d – real

但是,某些行是重复的。也就是说,hash和d都具有相同的值。

此外,如果两个散列是相同的,d的值也是相同的,但是两个相同的ds不意味着两个相同的散列

反正,我想删除重复的行。我没有主键列,因为我是一个白痴。什么是最快的方式做到这一点?

EDIT:delete from dist where rowID not in(select max(rowID)from dist group by hash);

看来做的伎俩。

你需要一种方法来区分行。根据你的评论,你可以使用特殊的 rowid column。

要通过保留每个(hash,d)的最低rowID来删除重复项:

delete   from Yourtablewhere    rowID not in         (         select  min(rowID)         from    Yourtable         group by                 hash,d         )
总结

以上是内存溢出为你收集整理的从sqlite数据库中删除重复的行全部内容,希望文章能够帮你解决从sqlite数据库中删除重复的行所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1162954.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-01
下一篇 2022-06-01

发表评论

登录后才能评论

评论列表(0条)

保存