pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Jean-Luc Lachance <jllachan@sympatico.ca>
To: Achilleus Mantzios <achill@matrix.gatewaynet.com>
Cc: Christoph Haller <ch@rodos.fzk.de>
Cc: pgsql-sql@postgresql.org
Subject: Re: How to delete the not DISTINCT ON entries
Date: Wed, 16 Jun 2004 10:14:14 -0400
Message-ID: <40D055B6.5020301@sympatico.ca> (raw)
In-Reply-To: <Pine.LNX.4.44.0406161511460.2590-100000@matrix.gatewaynet.com>
References: <Pine.LNX.4.44.0406161511460.2590-100000@matrix.gatewaynet.com>

If you do not have foreign key restrinctions, create a temp table from 
the select as:

CREATE TEMP TABLE tmp AS SELECT DISTINCT ON (location) location, time, 
report FROM weatherReports ORDER BY location, time DESC;

TRUNCATE weatherReports; INSERT INTO weatherReports SELECT * FROM tmp;

HTH


Achilleus Mantzios wrote:

> O kyrios Christoph Haller egrapse stis Jun 16, 2004 :
> 
> 
>>Referring to the DISTINCT ON example
>>
>>SELECT DISTINCT ON (location) location, time, report
>>FROM weatherReports
>>ORDER BY location, time DESC;
> 
> 
> maybe smth like 
> 
> delete from weatherReports where (location,time,report) not in 
> (SELECT DISTINCT ON (location) location, time, report FROM weatherReports 
> ORDER BY location, time DESC)
> 
> Note:
> Order by is very important, since it affects which rows are deleted.
> 
> 
>>How would I delete those entries skipped by the DISTINCT ON expression?
>>
>>TIA
>>
>>Regards, Christoph
>>
>>
>>
>>---------------------------(end of broadcast)---------------------------
>>TIP 6: Have you searched our list archives?
>>
>>               http://archives.postgresql.org
>>
> 
> 




view thread (3+ messages)

Message-ID: <40D055B6.5020301@sympatico.ca>
Permalink:  ../40D055B6.5020301@sympatico.ca/
Also on:    postgresql.org/message-id/40D055B6.5020301@sympatico.ca

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: jllachan@sympatico.ca, achill@matrix.gatewaynet.com, ch@rodos.fzk.de
  Subject: Re: How to delete the not DISTINCT ON entries
  In-Reply-To: <40D055B6.5020301@sympatico.ca>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox