Re: filtering out doubles

From: Stephan Szabo <sszabo(at)megazone23(dot)bigpanda(dot)com>
To: Jules Alberts <jules(dot)alberts(at)arbodienst-limburg(dot)nl>
Cc: <pgsql-sql(at)postgresql(dot)org>
Subject: Re: filtering out doubles
Date: 2003-03-12 20:17:46
Message-ID: 20030312121542.F55615-100000@megazone23.bigpanda.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql


On Wed, 12 Mar 2003, Jules Alberts wrote:

> Hello everyone,
>
> I was wondering how to filter out double values (where "value" spans
> two columns COL1 and COL2) with a SELECT statement. If I have this
> table:
>
> COL1 |COL2 |COL3
> -----------------------------
> a |b |some value
> a |b |another value
> a |c |yet another value
>
> what would be the select statement to get this result:
>
> COL1 |COL2 |COL3
> -----------------------------
> a |b |some value
> a |c |yet another value
>
> I was thinking that DISTINCT would do this, but I don't want to loose
> COL3. TIA for any tips!

If you're willing to use a postgresql extension,
select distinct on (col1, col2) * ...

That'll give you a pretty much arbitrarily chosen col3 for a col1,col2
pair that has duplicates. You can get some control over which one is
chosen using order by IIRC.

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Tomasz Myrta 2003-03-12 20:40:17 Re: LEFT JOIN and missing values
Previous Message mila 2003-03-12 20:12:15 Re: LEFT JOIN and missing values