Search Postgresql Archives

Re: Search for lists

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le 18/06/2011 23:51, Daron Ryan a écrit :

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?


this is a general case of relationnal division.

One way to do this is :


WITH
T0 AS
(SELECT 1 AS N --> all the data to be search each on a separate SELECT
 UNION ALL     --> with UNION ALL
 SELECT 2 AS N)
SELECT TBL_ID
FROM   T_MY_TABLE_TBL AS T
       INNER JOIN T0
             ON T.TBL_VALUE = T0.N
GROUP  BY TBL_ID
HAVING COUNT(*) = (SELECT COUNT(*)
                   FROM T0);

I you read french, I wrote a paper on the relational division :

http://sqlpro.developpez.com/cours/divrelationnelle/

A +

--
Frédéric BROUARD - expert SGBDR et SQL - MVP SQL Server - 06 11 86 40 66
Le site sur le langage SQL et les SGBDR  :  http://sqlpro.developpez.com
Enseignant Arts & Métiers PACA, ISEN Toulon et CESI/EXIA Aix en Provence
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************


--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux