gpt4 book ai didi

mysql - 处理重复项而不从数据库中删除它们

转载 作者:行者123 更新时间:2023-11-29 04:48:41 25 4
gpt4 key购买 nike

我想知道是否有一些常规方法可以在不实际删除重复行的情况下处理数据库中的重复项。或者我要实现的目标的特定名称,以便我可以查看。

为什么我要保留副本?因为我必须监视他们。我必须知道它们是重复的而不是例如可搜索,但与此同时,我必须保留它们,因为我从外部源更新行,如果我删除它们,它们会在我从外部源更新后立即返回数据库。

我有两个想法:

  1. 有一个额外的 bool 列“可搜索”,但我觉得这是一个部分解决方案,将来可能会证明它不够用

  2. 有一个附加列“duplicate_of”。它会保留该行重复的列的 ID。这将是同一张表的外键,有点奇怪,不是吗?

我知道这不是一个特定的编程问题,但我认为有人必须处理过类似的情况(Facebook - 页面他们跟踪那些与其他人重复的页面)并且知道经过验证的解决方案会很棒。

编辑:这些是相近的副本,主要由它们的位置(纬度、经度)确定,因此 DISTINCT 可能不是这里的解决方案

最佳答案

我会创建一个具有 DISTINCT 值的 View 。增加一个可搜索的列听起来很乏味。你的第二个想法其实更可行,自引用表没有什么奇怪的。

关于mysql - 处理重复项而不从数据库中删除它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14568725/

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