From: | David Johnston <polobo(at)yahoo(dot)com> |
---|---|
To: | Daron Ryan <daron(dot)ryan(at)gmail(dot)com> |
Cc: | "pgsql-general(at)postgresql(dot)org" <pgsql-general(at)postgresql(dot)org> |
Subject: | Re: Search for lists |
Date: | 2011-06-18 22:14:40 |
Message-ID: | 347678D0-92D2-46C9-942D-27651A72D57B@yahoo.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Untested approach
Use array_agg on column 2 along with group by on column 1 to build check arrays and then use equals to compare with an array of your desired input values.
You should omit duplicates and order ascending both the data and the input to ensure you are matching canonical forms.
David J.
On Jun 18, 2011, at 17:51, Daron Ryan <daron(dot)ryan(at)gmail(dot)com> wrote:
> Hello,
>
> I need to search a table to find sets of rows that have a column matching itself for the whole set and another column matching row for row with a list I am going to supply. The result I should receive should be value of the column that matches itself.
>
> For example given the following data in my table:
>
> 3; 1
> 3; 2
> 4; 8
> 4; 9
> 4; 10
>
> I might need to search for 1,2. This should produce the result 3. Or if I were to search for 8, 9, 10 the result should be 4. Searching for 8, 9 should produce an empty result as should 8, 9, 10, 11.
>
> Can anyone recommend a strategy?
>
> --
> Sent via pgsql-general mailing list (pgsql-general(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-general
From | Date | Subject | |
---|---|---|---|
Next Message | David Johnston | 2011-06-18 22:39:48 | Re: Search for lists |
Previous Message | Daron Ryan | 2011-06-18 21:51:37 | Search for lists |