在 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)
我有一个 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)