Thanks Chris, this solution is one alternative, but it will not work in my app because the join condition in your example is defined using all the fields. in my case the join condition is unknown. if a row in the first view is a subset of a row in the second view that means there is a match.
Regards ________________________________ From: Chris Travers <chris.trav...@gmail.com> To: Cc: salah jubeh <s_ju...@yahoo.com>; pgsql <pgsql-general@postgresql.org> Sent: Wednesday, September 28, 2011 5:09 PM Subject: Re: [GENERAL] tubles matching Is something like this what you are trying to do? somedb=# create table a (a int, b text, c date); CREATE TABLE somedb=# create table b (a int, b text, c date); CREATE TABLE somedb=# select * from a join b using (a, b, c); a | b | c ---+---+--- (0 rows) somedb=# insert into a values (1, 'test', now()); INSERT 0 1 somedb=# insert into b values (1, 'test', now()); INSERT 0 1 somedb=# insert into b values (2, 'test', now()); INSERT 0 1 somedb=# select * from a join b using (a, b, c); a | b | c ---+------+------------ 1 | test | 2011-09-28 (1 row) Best wishes, Chris Travers