Re: Removing duplicate rows in table

Christophe Pettus <xof@thebuild.com>

From: Christophe Pettus <xof@thebuild.com>
To: Rich Shepard <rshepard@appl-ecosys.com>
Cc: pgsql-general@postgresql.org
Date: 2024-09-10T15:10:26Z
Lists: pgsql-general
If you don't mind taking the time to swap tables, you can always do an INSERT ... SELECT DISTINCT <fields> into a new table, and then swap it with the existing table.


> On Sep 10, 2024, at 08:07, Rich Shepard <rshepard@appl-ecosys.com> wrote:
> 
> I've no idea how I entered multiple, identical rows in a table but I want to
> delete all but one of these rows.
> 
> Here's an example:
> 
> bustrac=# select * from projects where proj_nbr = '4242.01';
> proj_nbr |   proj_name    | start_date |  end_date  |  description  | notes ----------+----------------+------------+------------+---------------+-------
> 4242.01  | Expert witness | 2008-10-15 | 2008-10-28 | Consol Energy |
> 4242.01  | Expert witness | 2008-10-15 | 2008-10-28 | Consol Energy |
> 4242.01  | Expert witness | 2008-10-15 | 2008-10-28 | Consol Energy |
> 4242.01  | Expert witness | 2008-10-15 | 2008-10-28 | Consol Energy | (4 rows)
> 
> How do I clean this up so there's only a single row for this project number?
> 
> TIA,
> 
> Rich
> 
>