先给结论:只有当你能把“页数”还原成“对象”的生成规则时,去重才成立。多数不一致来自一个对象被拆成多行、多个变体或多个历史记录,而不是工具多算了词。若报告页数大于实际对象数,优先检查分页、变体和历史快照;若两者相等但内容仍重复,说明去重字段选错了。下面按“先判断、再验证、后动手”的顺序说明。
报告页数与实际对象数量不一致,通常不是单一原因。可以把差异归到三类,分别对应不同动作。
判断顺序建议从分页开始,再看变体,最后看历史。因为前两类是展示问题,第三类才涉及“保留还是退出”的决策。跳过前两步直接删记录,容易把仍有价值的条件行一起清掉。
不要凭感觉判断哪一行是重复。可以按下面的特征做一次小样本核对,假设只取报告前 20 行作为样本:
这一步的实际动作是:先导出样本,给每行补一个“来源类型”标记,再统计各类型占比。结果会直接影响下一步——如果分页型占多数,改统计口径即可;如果历史型占多数,才需要进入退出与保留的判断。
一个常见反例:你按关键词文本去重,报告页数确实下降了,但同一关键词在不同地区本来是两个需要分别处理的对象,合并后其中一个地区的条件被覆盖。此时数量对上了,决策依据却少了。
因此去重前要明确:你要保留的是“唯一对象”还是“唯一条件组合”。如果旧内容、旧系统或旧合作关系需要退出,而其中一部分仍有价值,就不能只按文本去重,而应按“对象 + 仍有效的条件”去重。保留仍然有价值的部分,意味着允许同一对象存在少量条件行,只要这些条件对应真实差异。
判断条件是否真实差异,可以问:去掉这个条件后,后续动作会不同吗?如果不会,它大概率是冗余行;如果会,它应当保留。
当差异主要来自历史型记录,处理重点不是“删到数量一致”,而是先标记状态。可以按以下顺序操作:
这里的实际动作是:先建立状态标记,再执行合并或删除。这样做的结果是,报告页数可能不会立刻降到与实际对象数完全相等,但剩下的差异都有解释,后续动作也不会因为误删而需要回滚。
如果报告页数与实际对象数量的差异来自统计时间点不同——例如报告生成时间早于对象新增时间——那么按上述方法去重并不能解决不一致。这种情况下,需要先统一时间口径,再重新生成报告,否则任何去重都是在处理过期数据。
下一步动作建议是:先确认报告生成时间与对象清单时间是否一致;若不一致,重新取同一时间点的数据;若一致,再按分页、变体、历史三类标记逐项核对。只有时间口径统一后,去重结果才能作为退出或保留的判断依据。