gpt4 book ai didi

甲骨文 : Identifying duplicates in a table without index

转载 作者:行者123 更新时间:2023-12-02 06:22:23 26 4
gpt4 key购买 nike

当我尝试在大型表上创建唯一索引时,出现唯一约束错误。本例中的唯一索引是 4 列的复合键。

是否有一种有效的方法来识别除以下之外的重复项:

select col1, col2, col3, col4, count(*)
from Table1
group by col1, col2, col3, col4
having count(*) > 1

上面的解释计划显示全表扫描成本极高,只是想看看是否有其他方法。

谢谢!

最佳答案

首先尝试在这四列上创建非唯一索引。这将花费 O(n log n) 时间,但也会将执行 select 所需的时间减少到 O(n log n)。

你在这里有点困难——无论你以何种方式对其进行切片,整个表都必须至少读入一次。朴素算法的运行时间为 O(n2),除非查询优化器足够聪明来构建临时索引/表。

关于甲骨文 : Identifying duplicates in a table without index,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2495552/

26 4 0