【发布时间】:2014-11-05 05:56:25
【问题描述】:
我有一个三列的表。
我想用一个计数器创建一个关于所有三列的unique index,它告诉我重复项在哪里。我也想删除它们。
【问题讨论】:
-
CREATE TABLE products (product_no integer, name_no integer, price integer); INSERT INTO products (product_no, name_no, price) VALUES (1, 3, 99), (2, 5, 199), (3, 6, 299), (3, 3, 1);从产品中选择 *; CREATE UNIQUE INDEX index_name on products(product_no, name_no, price);我没有收到错误,但我有重复或?
-
好吧:如果你有一个唯一的索引,你就不能有重复。如果你有重复,你不能有一个唯一的索引。
-
我想删除所有重复值以及它们在表中的位置
-
product_no = 3 的记录有两条,name_no=3 的记录有两条。你认为哪一个是重复的?
标签: postgresql indexing duplicates unique sql-delete