gpt4 book ai didi

postgresql - 无法在 postgres 中创建唯一索引,它说 "key is duplicate"即使它不是

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

我为一个表创建了唯一索引并得到了以下错误:

SQL error: ERROR: could not create unique index "unique_product" DETAIL: Key (mastercode)=() is duplicated

所以我运行一个查询来检查重复的记录并确实发现了一些重复的记录:

select * from product p where (select count(*) from product pp where pp.mastercode = p.mastercode) > 1

但即使在删除它们之后我也无法创建索引,它显示相同的错误并且检查重复项的查询没有显示任何内容。

看起来它在删除重复项或类似内容后没有更新索引。我该如何解决这个问题?

更新我忘记提及但可能很重要的事情,我已经在 mastercode 字段上有一个索引,这是一个默认索引(不是唯一的)。不知道这是否有关系。

最佳答案

检查此查询的结果:

SELECT  mastercode, count(*)
FROM product
GROUP BY mastercode
HAVING count(*) > 1; -- not unique

关于postgresql - 无法在 postgres 中创建唯一索引,它说 "key is duplicate"即使它不是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31965374/

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