From: | Harald Fuchs <hf0731x(at)protecting(dot)net> |
---|---|
To: | pgsql-admin(at)postgresql(dot)org |
Subject: | Re: [SQL Question] Selecting distinct rows having field value pairs on semantics |
Date: | 2006-10-03 13:56:49 |
Message-ID: | puac4dfqou.fsf@srv.protecting.net |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-admin |
In article <20061003075437(dot)38014(dot)qmail(at)web53507(dot)mail(dot)yahoo(dot)com>,
Allan Kamau <kamauallan(at)yahoo(dot)com> writes:
> Hi all,
> I am looking for a way of selecting records from a
> table comprising of pairing fields having unique
> semantics, where the pair of values of lets say 'left'
> and 'right' and another pair having values of 'right'
> and 'left' is considered as duplicates as they have
> the same meaning.
In the future, please use comp.db.postgresql.sql for questions like that.
> Below is my table structure.
> create table ppi_edges_tf
> (
> tf_id1 char(6)not null,
> tf_id2 char(6)not null,
> primary key(tf_id1,tf_id2)
> );
> I would like to create a query on this table that will
> contain only unique [tf_id1 and tf_id2] combination is
> unique semantically.
> for example looking at a select rows of the table
> tf_id1 | tf_id2
> -------+--------
> T00111 | T00111
> T00111 | T00112
> T00111 | T01400
> T00111 | T05015
> T00112 | T00111
> The second record (T00111 | T00112) and the fifth
> record(T00112 | T00111) have the same pairing meaning
> and should be considered duplicate in my case and only
> one for the records (either one) should be contained
> in the desired resultset of unique values.
You could use something like that:
SELECT DISTINCT id1, id2
FROM (SELECT CASE WHEN tf_id1 <= tf_id2 THEN tf_id1 ELSE tf_id2 END AS id1,
CASE WHEN tf_id1 >= tf_id2 THEN tf_id1 ELSE tf_id2 END AS id2
FROM ppi_edges_tf
) AS dummy
From | Date | Subject | |
---|---|---|---|
Next Message | Sistemas C.M.P. | 2006-10-03 13:59:36 | Obtain historial of query's |
Previous Message | Allan Kamau | 2006-10-03 07:54:37 | [SQL Question] Selecting distinct rows having field value pairs on semantics |