From: | Stijn Vanroye <s(dot)vanroye(at)easytowork(dot)nl> |
---|---|
To: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: select unique items in db |
Date: | 2006-09-14 07:16:26 |
Message-ID: | eeavsl$1n3r$1@news.hub.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
a schreef:
> this doesnt work
>
> SELECT DISTINCT on link *, rank(ts_vec, to_tsquery('default', $qtxt))
> FROM feed_entry WHE RE ts_vec @@ to_tsquery('default', $qtxt) ORDER
> BY rank(ts_vec, to_tsquery('default', $qtxt)) DESC LIMIT 5 OFFSET 0
>
> can you tell me how to get the DISTINCT elements in LINK
> thanks
Just place your distinct fields between ().
example syntax:
SELECT DISTINCT ON (field1, field2, fieldn) field1, field4
in your case:
SELECT DISTINCT ON (link) *, rank[...]
Do remember that if you select different fields than the ones you use in
the distinct, the results may not always be what you want.
e.g.:
suppose you have this data loaded in the a table:
id field1 field2
-- ------ ------
1 foo fooble
2 bar barble
3 foo wobble
4 woo wibble
5 foo bobble
if you "select distinct on (field1) *" which of the records with foo in
field1 is going to be returned 1, 3 or 5? I believe this doesn't
nescescarily has to be the same value each time.
From | Date | Subject | |
---|---|---|---|
Next Message | John Sidney-Woollett | 2006-09-14 07:40:07 | Re: remote duplicate rows |
Previous Message | A. Kretschmer | 2006-09-14 06:14:44 | Re: remote duplicate rows |