【发布时间】:2020-02-23 20:42:34
【问题描述】:
我有一个包含大量列的 PostgreSQL 表。该表没有主键,现在包含几行,这些行与另一行 100% 重复。
如何在不删除原始文件的情况下删除这些重复项?
我在related question 上找到了这个答案,但我必须拼出每个列名,这很容易出错。 如何避免对表结构一无所知?
示例:
给定
create table duplicated (
id int,
name text,
description text
);
insert into duplicated
values (1, 'A', null),
(2, 'B', null),
(2, 'B', null),
(3, 'C', null),
(3, 'C', null),
(3, 'C', 'not a DUPE!');
删除后,应保留以下行:
(1, 'A', null)
(2, 'B', null)
(3, 'C', null)
(3, 'C', 'not a DUPE!')
【问题讨论】:
-
@a_horse_with_no_name:编辑了我的问题以解释与您提出的重复问题的区别:我找不到的一个方面是如何避免知道表结构。这使得它的答案在我的场景中不适用。
标签: postgresql duplicates sql-delete