Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 无法创建唯一索引-声明有重复的值,但它没有';T_Sql_Postgresql_Indexing - Fatal编程技术网

Sql 无法创建唯一索引-声明有重复的值,但它没有';T

Sql 无法创建唯一索引-声明有重复的值,但它没有';T,sql,postgresql,indexing,Sql,Postgresql,Indexing,我正在尝试在代码字段上创建唯一索引: $ CREATE UNIQUE INDEX "one_code_per_person" on "core_person"("code") WHERE "code" IS NOT NULL; ERROR: could not create unique index "one_code_per_person" DETAIL: Table contains duplicated values. 它表示存在重复的值,但: $ select code, coun

我正在尝试在代码字段上创建唯一索引:

$ CREATE UNIQUE INDEX "one_code_per_person" on "core_person"("code") WHERE "code" IS NOT NULL;
ERROR:  could not create unique index "one_code_per_person"
DETAIL:  Table contains duplicated values.
它表示存在重复的值,但:

$ select code, count(*) from core_person group by code having count(*)>2;
code | count 
-----------+-------
(0 rows)
  • 这证明没有
WTF?

这:

HAVING COUNT(*) > 2
…意味着需要3个以上的副本。您要使用:

HAVING COUNT(*) > 1
…以查找具有2+个重复项的记录。

实际上,计数(*)>1将是您需要测试的条件。