在 Excel 中搜索重复的单元格

Search Excel for duplicate cells

我有一个 order_items table 的数据列存储在 Excel 文件中。 table 大约有 100 万行,包含 item_id、order_id、价格和数量列。除此之外,我还有一个 Oracle 数据库,它是这样构建的,主键由 item_id 和 order_id.

组合而成

当我尝试将数据导入 Oracle table 时,我收到违反主键的错误。由于我随机生成了table个数据,所以可能会出现百万行的情况,一个订单多次包含相同的产品。

我可以按任一列对数据进行排序,但我不想手动浏览所有那百万行,所以谁能告诉我在 excel,它们具有相同的 item_id(标记为 A)和 order_id(标记为 B)列。

使用 COUNTIFS 非常简单

我假设第 1 行是 header 行,E 是下一个空白列

在 E2 中使用公式

  =COUNTIFS(A:A,A2,B:B,B2)

将此公式填入列下方

Col E > 1 中的任何项目都是在该订单上出现不止一次的项目

注意数量和价格差异,您可能希望在删除重复行之前将行合并为 1

如果删除重复项,公式将更新为 1

记住您使用的是 COUNT - 因此具有相同 item_id 和 order_id 的所有行的计数都会 > 1 ,而不仅仅是找到的第二个(或更多)行
(所以不要立即删除所有这些行,因为您将删除原始行和重复行)

从第一原则考虑这一点表明排序是个好主意,因为 Excel 的排序算法很快并且应该在 NlogN(基数 2)时间内执行,因此您将谈论 20,000,000 次操作一百万行 运行.

需要几秒钟

所以首先对 Item_ID 和 Order_ID 进行联合排序。

然后你可以使用线性比较方法来检测重复的行,使用像

这样的公式
=AND(A2=A1,B2=B1)